首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学习SQL Server这一篇就够了

3.2.2、命令方式 使用“ALTER DATABASE”命令对数据库可进行以下修改: 改变数据文件的大小和增长方式 改变日志文件的大小和增长方式 增加或删除数据文件 增加或删除日志文件 增加或删除文件组...但要注意,SQL Server对表中bit类型列的存储做了优化:如果一个表中有不多于8个的bit列,这些列将作为一个字节存储;如果表中有9到16个bit列,这些列将作为两个字节存储;更多列的情况依次类推...) 8 × 无 性别 位型(bit) 1 √ 1 1:男;0:女 出生时间 日期型(datetime) 系统默认 √ 无 专业 定长字符型(char) 12 √ 无 总学分 整数型(int) 4...Server高级语法 8.1、索引 8.1.1、索引概念 索引是帮助SQL Server高效获取数据的一种有序的数据结。...例如,@@ERROR返回执行的上一个T-SQL语句的错误号;@@CONNECTIONS返回自上次启动SQL Server以来连接或试图连接的次数。 局部变量 :局部变量以@开头。

6.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据库之数据类型详解

    需要注意的是,在上面的数值类型中,它只允许在小数点后面多一位,而不允许在小数点之前多一位,如插入1234.5或1234.35就会报错。...ENUM 是一个字符串对象,其值为表创建时在列规定中枚举(即列举)的一列值,语法格式为:字段名 ENUM ('值1', '值2', ........4、SET SET 是一个字符串对象,可以有零个或多个值,SET 列最多可以有 64 个成员,其值为表创建时规定的一列值,语法:SET('值1','值2',.........5、BIT BIT 数据类型用来保存位字段值,即以二进制的形式来保存数据,如保存数据 13,则实际保存的是 13 的二进制值,即 1101; BIT 是位字段类型,BIT(M) 中的 M 表示每个值的位数...例: #创建一个表,数据类型为bit,宽度为4,也就是说,最多只能插入16以下的数据 mysql> create table tab12(b bit(4)); #插入正常的数据 mysql> insert

    4.4K30

    SQL 中的行转列和列转行

    行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 的运算符PIVOT来实现。用传统的方法,比较好理解。...但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT…CASE 语句中所指定的语法更简单、更具可读性。下面我们通过几个简单的例子来介绍一下列转行、行转列问题。...PayType IN ([支付宝], [手机短信], [工商银行卡], [建设银行卡]) ) AS T ORDER BY CreateTime 复制代码 有时可能会出现这样的错误...: 消息 325,级别 15,状态 1,第 9 行 ‘PIVOT’ 附近有语法错误。...这个是因为:对升级到 SQL Server 2005 或更高版本的数据库使用 PIVOT 和 UNPIVOT 时,必须将数据库的兼容级别设置为 90 或更高。

    5.5K20

    重温SQL Server的行转列和列转行,面试常考题

    行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 的运算符PIVOT来实现。用传统的方法,比较好理解。...但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT…CASE 语句中所指定的语法更简单、更具可读性。下面我们通过几个简单的例子来介绍一下列转行、行转列问题。...PayType IN ([支付宝], [手机短信], [工商银行卡], [建设银行卡]) ) AS T ORDER BY CreateTime 有时可能会出现这样的错误...: 消息 325,级别 15,状态 1,第 9 行 ‘PIVOT’ 附近有语法错误。...这个是因为:对升级到 SQL Server 2005 或更高版本的数据库使用 PIVOT 和 UNPIVOT 时,必须将数据库的兼容级别设置为 90 或更高。

    73610

    mysql行转列,列转行

    行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 2005 新增的运算符PIVOT来实现。用传统的方法,比较好理解。...但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT...CASE 语句中所指定的语法更简单、更具可读性。下面我们通过几个简单的例子来介绍一下列转行、行转列问题。...PayType IN              ([支付宝], [手机短信], [工商银行卡], [建设银行卡])        ) AS T  ORDER BY CreateTime 有时可能会出现这样的错误...: 消息 325,级别 15,状态 1,第 9 行 'PIVOT' 附近有语法错误。...这个是因为:对升级到 SQL Server 2005 或更高版本的数据库使用 PIVOT 和 UNPIVOT 时,必须将数据库的兼容级别设置为 90 或更高。

    9.9K30

    MySQL数据库,从入门到精通:第十二篇——MySQL数据类型详解

    MySQL允许使用非标准语法(其他数据库未必支持,因此如果涉及到数据迁移,则最好不要这么用):FLOAT(M,D)或DOUBLE(M,D)。这里,M称为精度,D称为标度。...CREATE TABLE test_bit1( f1 BIT, f2 BIT(5), f3 BIT(64) ); INSERT INTO test_bit1(f1) VALUES(1); #Data too...long for column 'f1' at row 1 INSERT INTO test_bit1(f1) VALUES(2); INSERT INTO test_bit1(f2) VALUES(...以YY-MM-DD格式或者YYMMDD格式表示的字符串日期,此格式中,年份为两位数值或字符串满足YEAR类型的格式条件为:当年份取值为 00 到 69 时,会被转化为 2000 到 2069 ;当年份取值为...VALUES('春'),('秋'); # 忽略大小写 INSERT INTO test_enum VALUES('UNKNOW'); # 允许按照角标的方式获取指定索引位置的枚举值 INSERT INTO

    61520

    MySQL中的数据类型_js中的数据类型

    MySQL允许使用 非标准语法 (其他数据库未必支持,因此如果涉及到数据迁移,则最好不要这么 用): FLOAT(M,D) 或 DOUBLE(M,D) 。这里,M称为 精度 ,D称为 标度 。...CREATE TABLE test_bit1( f1 BIT, f2 BIT(5), f3 BIT(64) ); INSERT INTO test_bit1(f1) VALUES...(1); #Data too long for column 'f1' at row 1 INSERT INTO test_bit1(f1) VALUES(2); INSERT INTO test_bit1...以 YY-MM-DD 格式或者 YYMMDD 格式表示的字符串日期,此格式中,年份为两位数值或字符串满足YEAR类型的格式条件为:当年份取值为00到69时,会被转化为2000到2069;当年份取值为70...VALUES('春'),('秋'); # 忽略大小写 INSERT INTO test_enum VALUES('UNKNOW'); # 允许按照角标的方式获取指定索引位置的枚举值 INSERT

    6.7K20

    表的数据类型

    比如图片,视频等找一个文件服务器,数据库中只存路径或url。 #3. 时间类型: 最常用:datetime #4....t9 values(8); #会报错,虽然宽度为1,但是是按二进制的来算的,所有此时只能输入0或1,当宽度为2时最大只能输3 MariaDB [db1]> insert into t9 values...3.DATETIME使用8字节的存储空间,TIMESTAMP的存储空间为4字节。因此,TIMESTAMP比DATETIME的空间利用率更高。...对于 GBK 和 UTF-8 这些字符类型,其有些字符是以 1 字节 存放的,有些字符是按 2 或 3 字节存放的,因此同样需要 1 ~ 2 字节的空间来存储字符的长 度。...五 枚举类型与集合类型  字段的值只能在给定范围中选择,如单选框,多选框 enum 单选 只能在给定的范围内选一个值,如性别 sex 男male/女female set 多选 在给定的范围内可以选择一个或一个以上的值

    4.6K70

    MySQL全字段类型概览

    D作用于浮点类型和定点类型,表示小数点后的位数。D最大值是30,D的值不能大于M-2。 fsp作用于TIME DATETIME TIMESTAMP,表示秒的精度,也就是秒那部分数值小数点后的位数。...fsp的范围为0-6,默认值是0(不同于标准SQL的默认值6)。 计算机用二进制存储数据,而每个bit只可能是0或1,是没有小数点的,所以为了存储带小数的实数,就出现了定点数和浮点数。...固定的小数点位置决定了固定位数的整数部分和小数部分,不利于同时表达特别大或特别小的数。 数字类型 MySQL支持标准SQL数字类型。...除非开启REAL_AS_FLOAT模式,否则默认认为REAL是DOUBLE PRECISION的同义关键词。 BIT类型存储位数值,MyISAM,MEMORY,InnoDB,NDB支持BIT。...浮点类型 FLOAT和DOUBLE表示近似的数值。MySQL使用4个byte表示单精度,8个byte表示双精度。 BIT[(M)]位值类型,M`代表bit的数量,范围是1-64,缺省则默认为1。

    3.2K20

    SQL Server中的sp_executesql系统存储过程

    [@param1 =] ‘value1’ 参数字符串中定义的第一个参数的值。该值可以是常量或变量。必须为 stmt 中包含的每个参数提供参数值。...如果 stmt 中包含的 Transact-SQL 语句或批处理没有参数,则不需要值。 n 附加参数的值的占位符。这些值只能是常量或变量,而不能是更复杂的表达式,例如函数或使用运算符生成的表达式。...返回代码值 0(成功)或 1(失败) 结果集 从生成 SQL 字符串的所有 SQL 语句返回结果集。...如果只更改了语句中的参数值,则 sp_executesql 可用来代替存储过程多次执行 Transact-SQL 语句。...使用 sp_executesql 时,只生成 12 个版本的 INSERT 字符串,每个月的表 1 个。使用 EXECUTE 时,因为参数值不同,每个 INSERT 字符串均是唯一的。

    1.8K10

    第11章、数据类型

    在 MyISAM/MEMORY/InnoDB和NDB表中支持BIT 数据类型,BIT 数据类型用于存储 bit 值。...整型 MySQL 支持 SQL 标准整数类型INTEGER(或INT)和SMAILLINT。在此之外,MySQL 还扩展了数据类型:TINYINT、MEDIUMINT、BIGINT。...近似小数类型 FLOAT和DOUBLE类型表示近似的数值数据值。MySQL使用四个字节作为单精度值,八个字节作为双精度值。 BIT数据类型 BIT(M) 允许存储M个BIT值,M的范围是1至64。...在 MySQL 5.7 中已经禁用了YEAR(2); 自动初始化和更新 TIMESTAMP 与 DATETIME 表格中的 TIMESTAMP 或 DATETIME 的列可以初始化当前时间作为默认值...要 MySQL 5.7中,新增DATETIME列的支持设置默认值和自动更新。在之前的版本,你如果尝试设置将会得到一个错误。

    1.7K20

    SQL Server生成随机日期模拟测试数据的需求

    最近碰到个SQL Server跑SQL的性能问题,同样是关系型数据库,因此在原理层面,不同数据库之间有些内容是可以借鉴的,但是SQL Server一些细节上和操作层面,略有不同,需要熟悉和积累。...插入10000条测试数据 insert into t1 default values go 10000 两点要注意, (1) go语法在DBeaver提示错误,可以在SQL Server Management...(2) dateidff函数用来获取日期/时间差,入参是三个,(datepart, startdate, enddate),其中datepart表示返回两个指定日期(startdate和enddate)...之间所跨的日期或时间边界的数目,此处用的day,是按照天,还可以改成second按照秒计算等。...(5) dateadd函数顾名思义,将一个时间间隔和指定date的指定datepart相加,返回一个新的datetime值,入参是三个,(datepart, number, date)。

    2K20

    CC++ 通过SQLiteSDK增删改查

    支持 SQL: SQLite 支持大部分标准的 SQL 语法,并提供了事务支持,包括隔离级别和回滚。...如果有错误发生,返回一个表示错误代码的整数值。可以通过 sqlite3_errmsg 函数获取更详细的错误信息。 sqlite3_close 用于关闭数据库连接的函数。...如果有错误发生,返回一个表示错误代码的整数值。 使用 sqlite3_close 函数可以释放与数据库连接相关的资源,并确保数据库文件被正确关闭。...errmsg: 用于存储错误消息的指针。 sqlite3_exec 函数执行一个或多个 SQL 语句,并对每一条语句的执行结果调用指定的回调函数。...其他错误码,表示执行过程中出现了错误。 sqlite3_column_text 用于获取查询结果集中某一列的文本值。

    39610

    学习MySQL这一篇就够了

    ,如果转换成功,则继续运算,如果转换失败,则默认为0,然后继续运算 3、 SELECT NULL+数值; NULL和任何数值参与运算结果都是NULL 10、【补充】ifnull函数 功能:判断某字段或表达式是否为...比较容易受时区、语法模式、版本的影响,更能反映当前时区的真实时间,而DATETIME则只能反映出插入时的当地时区 TIMESTAMP支持的时间范围较小,DATETIME的取值范围:1000-1-1 —...8.3、存储过程 8.3.1、语法 一、含义 存储过程,类似于Java中的方法,它是一组预先编译好的SQL语句的集合,理解成批处理语句 二、特点 简化sql语句 提高了sql的重用性 减少了编译次数并且减少了和数据库服务器的连接次数..., 在存储过程和函数中可以使用光标对结果集进行循环的处理 二、语法 1、声明游标 DECLARE 游标名称 CURSOR FOR select结果集; 2、打开游标 OPEN 游标名称; 3、获取游标...但是事件不能直接调用,通过单独或调用存储过程使用,在某一特定的时间点,触发相关的SQL语句或存储过程 三、语法 1、创建 MySQL事件调度器event_scheduler负责调用事件,它默认是关闭的。

    1.3K10

    SQL学习笔记三(补充-2)之MySQL数据类型

    阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考...定长的类型往前放,变长的往后放 比如性别 比如地址或描述信息 >255个字符,超了就把文件路径存放到数据库中。...比如图片,视频等找一个文件服务器,数据库中只存路径或url。 #3. 时间类型: 最常用:datetime #4....3.DATETIME使用8字节的存储空间,TIMESTAMP的存储空间为4字节。因此,TIMESTAMP比DATETIME的空间利用率更高。...对于 GBK 和 UTF-8 这些字符类型,其有些字符是以 1 字节 存放的,有些字符是按 2 或 3 字节存放的,因此同样需要 1 ~ 2 字节的空间来存储字符的长 度。

    1.8K40
    领券