本文将带您了解关于mssqlsql字符串截取实例代码的新内容,同时我们还将为您解释sql中字符串截取的相关知识,另外,我们还将为您提供关于django连接mssql数据库(django1.11.11s
本文将带您了解关于mssql sql 字符串截取实例代码的新内容,同时我们还将为您解释sql中字符串截取的相关知识,另外,我们还将为您提供关于django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)、Java / MSSQL:java.sql.SQLException无效的对象名称“ TableName”、lnmp 环境里安装 mssql 及 mssql 的 php 扩展、lua 访问 mssql 的驱动(好用的)是哪一个?对 mysql/pgsql 的支持不错,但希望先在 mssql 能用起来的实用信息。
本文目录一览:- mssql sql 字符串截取实例代码(sql中字符串截取)
- django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)
- Java / MSSQL:java.sql.SQLException无效的对象名称“ TableName”
- lnmp 环境里安装 mssql 及 mssql 的 php 扩展
- lua 访问 mssql 的驱动(好用的)是哪一个?对 mysql/pgsql 的支持不错,但希望先在 mssql 能用起来
mssql sql 字符串截取实例代码(sql中字符串截取)
mssql sql 字符串截取实例代码
关于字符串截取我们用substring函数
substring ( expression , start , length ) 返回字符、binary、text 或 image 表达式的一部分。
参数
expression
是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
是一个整数,指定子串的开始位置。
length
是一个整数,指定子串的长度(要返回的字符数或字节数)。
left ( character_expression , integer_expression ) 返回从字符串左边开始指定个数的字符。
参数
character_expression
字符或二进制数据表达式。character_expression 可以是常量、变量或列。character_expression 必须是可以隐式地转换为 varchar 的数据类型。否则,请使用 cast 函数显式转换 character_expression。
integer_expression
是正整数。如果 integer_expression 为负,则返回空字符串。
返回类型
varchar
right ( character_expression , integer_expression ) 返回字符串中从右边开始指定个数的 integer_expression 字符。
参数
character_expression
由字符数据组成的表达式。character_expression 可以是常量、变量,也可以是字符或二进制数据的列。
integer_expression
是起始位置,用正整数表示。如果 integer_expression 是负数,则返回一个错误。
返回类型
varchar
下面看实例
有一列的值为
title
aaaa,bb,cc
bb,ff,gg
ii
现在想截取成这样
aaaa bb cc
bb ff gg
ii
也就是分成了3个字段了
请根据","来取 因为需求可能会是 要第2个逗号之前且第一个逗号之后的内容
所以根据逗号来判别更好!
if object_id(''tempdb..#tb'') is not null
drop table #tb
go
create table #tb (title varchar(50))
go
insert into #tb select ''aaaa,bb,cc''
union all select ''bb,ff,gg''
union all select ''ii''
go
select
title1 = parsename(replace(title,'','',''.''), len(title) - len(replace(title,'','',''''))+1),
title2 = parsename(replace(title,'','',''.''), len(title) - len(replace(title,'','',''''))),
title3 = parsename(replace(title,'','',''.''), len(title) - len(replace(title,'','',''''))-1),
title4 = parsename(replace(title,'','',''.''), len(title) - len(replace(title,'','',''''))-2)
from #tb
/*
title1 title2 title3 title4
-------------- -------------- -------------- --------------
aaaa bb cc null
bb ff gg null
ii null null null
(3 行受影响)
django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)
模块使用的是 pcodbc+django-pyodbc-azure
1 pip install django-pyodbc-azure
2 pip install pyodbc
版本分别为
pyodbc==4.0.26
django-pyodbc-azure==2.1.0.0
创建数据库连接
DATABASES = {
''default'': {
''ENGINE'': ''sql_server.pyodbc'',
''HOST'': ''127.0.0.1'',
''PORT'': '''',
''NAME'': ''test'',
''USER'': ''sa'',
''PASSWORD'': ''123'',
''OPTIONS'': {
''driver'': ''ODBC Driver 13 for SQL Server'',
''MARS_Connection'': True,
}
}
}
# set this to False if you want to turn off pyodbc''s connection pooling
# 不想用pyodbc连接就把这句加上?
DATABASE_CONNECTION_POOLING = False
在对应的 app/models.py 添加 model
from django.db import models
# Create your models here.
class userinfo(models.Model):
#如果没有models.AutoField,默认会创建一个id的自增列
name = models.CharField(max_length=30)
email = models.EmailField()
memo = models.TextField()
项目文件下目录下执行
python manage.py makemigrations
python manage.py migrate
报错
django.db.utils.InterfaceError: (''IM002'', ''[IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 (0) (SQLDriverConnect)'')
原因是未安装 ODBC 驱动
前往微软官网下载驱动
https://www.microsoft.com/zh-CN/download/details.aspx?id=53339
Microsoft® ODBC Driver 13.1 for SQL Server
如果下载其他版本 ''driver'': 字段要自行修改
再次执行
1 python manage.py makemigrations
2 python manage.py migrate
查看数据库
如出现以上表说明连接成功
Java / MSSQL:java.sql.SQLException无效的对象名称“ TableName”
我正在尝试将Java应用程序从旧服务器移动到新服务器。该应用程序在Tomcat上运行,使用Microsoft SQL
Server作为后端数据库,并使用在数据源(ODBC)中定义的系统DSN来确定连接到的位置。旧服务器使用Windows 2000 / SQL Server
2000,新服务器使用Windows 2003 / SQL Server 2005。
服务器之间的ODBC定义相同,并且定义了要使用的数据库。
在新服务器上,当用户尝试登录时,stdout.log中将显示以下内容:
正在检查用户 错误:java.sql.SQLException:[Microsoft] [ODBC SQL Server驱动程序] [SQL
Server]对象名称’UserTable’无效。
DB中确实存在一个名为 UserTable 的表,但通过管理界面显示为“ dbo.USerTable ”。
我应该调整一下MSSQL中的某个设置,以使其对“ dbo”感到满意。缺少前缀,或者还有其他我想念的东西?
[编辑]使用Windows身份验证,并且作为故障排除步骤,已将公共角色和来宾角色赋予数据库所有权限。
答案1
小编典典数据库登录是否不同?dbo“前缀”只是对象所定义的架构。因此,如果您的ODBC连接器使用dbo凭据登录,则该对象应位于其默认架构中。
lnmp 环境里安装 mssql 及 mssql 的 php 扩展
小活中用到 mssql, 于是在自己 lnmp 环境中安装各 mssql 数据库
步骤如下:
源码编译安装
# tar zxvf freetds-stable.tgz(解压,)
# cd freetds-0.91
# 编译
# ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib
# make
# make install
参数解释:
安装 freetds 到目录 /usr/local/freetds:--prefix=/usr/local/freetds
支持 MSSQL2000:--with-tdsver=8.0 --enable-msdblib
配置 FreeTds 的库文件
将 freetds 的库文件所在路径配置到 LD_LIBRARY_PATH 参数中:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/localfreetds/lib/:
或者直接把 etc/bashrc 的文件 bashrc 直接填写上 LD_LIBRARY_PATH=/usr/localfreetds/lib:$LD_LIBRARY_PATH
这么作的目的是为了避免加载 FreeTds 库文件加载不上的情况。
php 里安装 php-mssql 扩展:
cd /download (把php-mssql扩展下载到download目录里)
wget http://cn2.php.net/distributions/php-5.6.30.tar.gz (下载扩展文件,这里要根据你环境中运行的php版本选择对应的扩展版本下载,我这里php是5.6.30的 所以php-mssql扩展下载对应的版本)
tar -zxvf php-5.6.30.tar.gz
cd /php-5.6.30/ext/mssql
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds/
make && make install
编译安装后的结果 如下图
同时 mssql.so 也在 php 扩展文件下生成 (如下图)
把 extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/mssql.so" 添加到 usr/local/php/lib/php.ini 中
引用扩展后,重启 web 服务,通过 phpinfo 查看扩展 mssql 是否开启成功
重启 php /usr/local/php/sbin/php-fpm reload
重启 nginx 进入 nginx 可执行目录 sbin 下,输入命令./nginx -s reload 即可(或者 /application/nginx/sbin/nginx -s reload)
lua 访问 mssql 的驱动(好用的)是哪一个?对 mysql/pgsql 的支持不错,但希望先在 mssql 能用起来
lua 访问 mssql 的驱动(好用的)是哪一个?
lua 对 mysql/pgsql 的支持不错,但对 mssql 的访问,总是不太顺
而目前希望先在 mssql 能用起来
关于mssql sql 字符串截取实例代码和sql中字符串截取的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)、Java / MSSQL:java.sql.SQLException无效的对象名称“ TableName”、lnmp 环境里安装 mssql 及 mssql 的 php 扩展、lua 访问 mssql 的驱动(好用的)是哪一个?对 mysql/pgsql 的支持不错,但希望先在 mssql 能用起来的相关信息,请在本站寻找。
本文标签: