简单的SQL问题 下面的这个ANSI_PADDING关键字用在什么地方(它有什么作用)呢?SET ANSI_PADDING OFF//什么意思呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SET ANSI_PADDING:针对小于定义的列大小的值以及 char、varchar、binary 和 varbinary 数据中有尾随空格的值,此语句可以控制存储此类值的方式。SET ANSI_PADDING OFF:填充原始值(char 列具有尾随空格的值,binary 列具有尾随零的值),使达到列的长度。剪裁插入 varchar 列中的字符值的尾随空格。剪裁插入 varbinary 列中的二进制值的尾随零。 PRINT 'Testing with ANSI_PADDING ON'SET ANSI_PADDING ON;GOCREATE TABLE t1 ( charcol CHAR(16) NULL, varcharcol VARCHAR(16) NULL, varbinarycol VARBINARY(8));GOINSERT INTO t1 VALUES ('No blanks', 'No blanks', 0x00ee);INSERT INTO t1 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<', varbinarycolFROM t1;GOPRINT 'Testing with ANSI_PADDING OFF';SET ANSI_PADDING OFF;GOCREATE TABLE t2 ( charcol CHAR(16) NULL, varcharcol VARCHAR(16) NULL, varbinarycol VARBINARY(8));GOINSERT INTO t2 VALUES ('No blanks', 'No blanks', 0x00ee);INSERT INTO t2 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<', varbinarycolFROM t2;GODROP TABLE t1DROP TABLE t2联机帮助的例子,运行再参考帮助就知道了。 当设置为 ON 时,不剪裁字符值中插入到 varchar 列的尾随空格和二进制值中插入到 varbinary 列的尾随零。不将值按列的长度进行填充。当设置为 OFF 时,剪裁 varchar 列的尾随空格和 varbinary 列的尾随零。该设置只影响新列的定义。 SET ANSI_PADDING 为 ON 时,将允许空值的 Char(n) 和 binary(n) 列填充到列长,而当 SET ANSI_PADDING 为 OFF 时,将剪裁尾随空格和零。始终将不允许空值的 Char(n) 和 binary(n) 列填充到列长。 SET ANSI_PADDING 怎样使用哦。 。才会出现去掉空格和0哦? 如何判断,刚刚删除的是那张表? 谁有递归触发器的例子?感谢 ERWin4.1缺少license,求解决方式! 请教SQL 高手 如何将Sqlserver2000 发布服务器发布周期更改为1秒钟一次? sql server 2000 不能在 windows 2003 上面正常安装,且安装之后无法远程访问数据库 sql通过链接服务器更新oracle的timestamp字段 再问数据库的备份问题 ^O^ SQL备份问题 一道关于数据库的面试题目 SQL 多列转多行 sql2000能不能把数据库备份到网络上其它的电脑上?
填充原始值(char 列具有尾随空格的值,binary 列具有尾随零的值),使达到列的长度。
剪裁插入 varchar 列中的字符值的尾随空格。剪裁插入 varbinary 列中的二进制值的尾随零。
PRINT 'Testing with ANSI_PADDING ON'
SET ANSI_PADDING ON;
GOCREATE TABLE t1 (
charcol CHAR(16) NULL,
varcharcol VARCHAR(16) NULL,
varbinarycol VARBINARY(8)
);
GO
INSERT INTO t1 VALUES ('No blanks', 'No blanks', 0x00ee);
INSERT INTO t1 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<',
varbinarycol
FROM t1;
GOPRINT 'Testing with ANSI_PADDING OFF';
SET ANSI_PADDING OFF;
GOCREATE TABLE t2 (
charcol CHAR(16) NULL,
varcharcol VARCHAR(16) NULL,
varbinarycol VARBINARY(8)
);
GO
INSERT INTO t2 VALUES ('No blanks', 'No blanks', 0x00ee);
INSERT INTO t2 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<',
varbinarycol
FROM t2;
GODROP TABLE t1
DROP TABLE t2
联机帮助的例子,运行再参考帮助就知道了。