`
麻雀咖啡
  • 浏览: 20957 次
  • 性别: Icon_minigender_1
  • 来自: 福建
文章分类
社区版块
存档分类
最新评论

MS 数据库的使用备忘

阅读更多
数据库使用
一般不使用汉字作为数据库的名字,
只能使用下划线和字母开头,只能使用A_Z a_z $ # _等
在使用关键字的时候可以使用[name]来使用
这是不推荐的.

临时表
SQL Server 支持临时表。临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库 tempdb 内。

临时表有两种类型: 

本地临时表 
以一个井号 (#) 开头的那些表名。只有在创建本地临时表的连接上才能看到这些表。

全局临时表 
以 两个井号 (##) 开头的那些表名。在所有连接上都能看到全局临时表。如果在创建全局临时表的连接断开前没有显式地除去这些表,那么只要所有其它任务停止引用它们,这些表即 被除去。当创建全局临时表的连接断开后,新的任务不能再引用它们。当前的语句一执行完,任务与表之间的关联即被除去;因此通常情况下,只要创建全局临时表 的连接断开,全局临时表即被除去。
查询当前数据库所有的表
select   name   from   sysobjects   where   xtype= 'U '
Unicode 编码, 使用两个字节来表示一个字符,对汉字的支持比较好.
非unicode 是用一个字节表示一个字母,用两个字节表示汉字
Big5 支持繁体字.

Char 是定长的,余位会使用空格补全 不是unicode 最多只能使用8000个字节
Varchar 也是最多只能8000个字节,(4000个汉字,8000个字母),余位会自动回收,节省了空间如果一个字段的长度是一定的,确定是定长的要使用Char
Nchar 和nvarchat 最多只能有4000个汉字和4000个字母
Ntext 可变长度的Unicode数据,2的30次方-1,可以使用多种文字,
Text 是Unicode和,2的31次方-1 ,一般用于存放英文,处理非英文的时候可能会产生乱码
汉字是首先Unicode

Bit 0-1 超过一的数会自动减为1
Bigint -2^63_2^63-1  8字节
Int -2^31到2^31-1  4字节
Smallint -2^15_-2^15-1  2个字节
Tinyint 0-255 一个字节
把一个字符串当成一个数。来存放超级大的数。

Float[n] N是表示位数,从1到53 


Numeric (N,p) N是总位数,p 是小数点后的位数,p的默认是0,也就是即可标示整数,也可以标示小数

SQL SERVER 提供的一个时间函数 getdata()
Datatime 表示日期
Timestamp 表示时间戳

图片,image 视频 binay 但是很少使用,在sql之中只保留文件路径的存储效率更高

主键必须要有值,在部分插入的时候就要在表的后面输入添加的列名序列
主键也不能重复出现
Insert into table_name (字段列表) values(值得列表) 有一个对应的关系
在不重复的条件下,主键是可以修改的

删除全部的数据
Delete from 表名
删除指定的数据
Delete from table_name
在控制台中使用SQL server 是 SQLCMD
--第二天
外键只能是主键
外键与主键的数据类型要一致

Distinct 删除重复的行
如果处理是空的问题 isnull(“原值”,0) 如果是空就指定回0

Order by 默认是升序 asc  降序desc
--
聚合的函数是不能直接用于子查询的

尽量把能够减少结果集的操作些在SQL语句的最右边
Group by 出来的元素都需要在 select中显示出来

Having 与group by 结合使用,可以对分组查询之后的结果进行删选

Group by + having + order by
在选择列中,如果有列\表达式\和分组函数,那么这些列和表达式必须有一个出现在group by 中.否则出错

子查询表可以使用一个别名
在数据库中相当于是一个临时表
将cat 中的数据distinct 之后加入到临时表#temp中
Select distinct * into #temp from cat
Delete from cat
删除cat中的所有数据
Insert into cat from #temp
将临时表中的数据加入到cat表中
Drop #temp
删除临时表
删除表中的重复记录

左外联 指定左边的表全部都要出现,如果没有匹配的记录就是用null来填充

疯狂地复制数据
create table test
(
testId int primary key identity(1,1),
testName varchar(30),
testpass varchar(30)
)
insert into test(testName,testpass) values('sparrrow','sparrow');

insert into test(testName,testpass) select testName,testpass from test

unique ,当一个列名设置为unique之后,可以为空(null)但是只能呢个有一个行位空

一个表只能拥有一个主键,或者是一组组合主键,但是可以有多个唯一约束

create table test
(
testId int ,
testName varchar(30),
testpass varchar(30),
prinmary key (testId, testName)
)
Backup database 数据库名 to disk=’路径’
分享到:
评论

相关推荐

    VB工作备忘录设计与实现(源代码+系统).rar

    如果采用数据库,如MS Access,那么需要使用ADO.NET(ActiveX Data Objects .NET)进行数据访问和操作。 3. **事件驱动编程**:VB是事件驱动的,当用户进行如点击按钮或选择菜单项等操作时,相应的事件处理程序会被...

    DataNumen Database Recovery

    它包含了以下的修复工具:适用于修复损坏的MS Access MDB和ACCDB的DataNumen Access Repair,适用于修复损坏的DBF文件的DataNumen DBF Repair。 主要功能: 1. 支持修复Microsoft Access 95至2013版本的数据库文件...

    图书管理概要设计说明

    对于SQL Server企业版,采用典型的C/S模型,而单机版则使用MS Access数据库。并发访问、数据加锁和事务处理由SQL Server负责。 2.4 结构与技术 系统1.0版本使用Visual Basic快速原型技术,结合窗体、模块、界面元素...

    基于Azure云计算平台的智能镜子的研究与实现.pdf

    该系统利用微软认知服务中的语音识别和语义理解技术进行语义分析与处理,并采用AzureMySQL数据库进行海量数据存储。系统还利用Azure Web App服务进行部署与维护,并结合安卓设备和配套硬件,实现了寝室记账、课表...

    GSM系统的组成与网络结构讲稿

    GSM(Global System for Mobile Communications,全球移动通信系统)是一种广泛使用的数字移动通信标准,尤其在20世纪末和21世纪初占据了主导地位。GSM系统由多个组成部分构成,形成了一个复杂的网络结构,旨在提供...

    FoosundotNETCMS内容管理系统

    dotNETCMSv1.0免费版功能:SQL数据库+内容管理+发布管理+会员中心+插件管理(广告系统+采集系统+问卷调查+友情链接+统计系统+整合接口+文件对比+自定义字段+自定义表单+数据库维护)程序特点:1.全部生成静态页面/动态...

    超级有影响力霸气的Java面试题大全文档

     ArrayList 和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,...

    java 面试题 总结

    SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。 对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上...

Global site tag (gtag.js) - Google Analytics