GVKun编程网logo

mssql sql 字符串截取实例代码(sql中字符串截取)

4

本文将带您了解关于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中字符串截取)

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)

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 / 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 扩展

lnmp 环境里安装 mssql 及 mssql 的 php 扩展

小活中用到 mssql, 于是在自己 lnmp 环境中安装各 mssql 数据库

步骤如下: 

源码编译安装

(1)下载 freetds-stable-0.91 源码: http://download.csdn.net/download/xhu_eternalcc/7457555(花了 4 积分,没有积分的找我要,微信 zmd1047773569)
          上传到根目录下的 download 文件中
(2)编译安装:
   # cd /download

           # 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 的驱动(好用的)是哪一个?对 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 能用起来的相关信息,请在本站寻找。

本文标签: