SQL SERVER小结(1)
尝试写博文这个想法也是昨天看了其他博主讲了他的经历,我也想尝试一下,希望能以此让自己更加努力吧嘻嘻。尝试了一下之后发现这个真的可以起到很好的总结的效果,要是之前学C#的时候也能这样记录感觉就很棒了。
(From:一个专业是规划、想自学、成为一个GIS开发工程师的菜鸟)
幸福是奋斗出来的!奥利给!
早上费了九牛二虎之力终于安装了软件
玄学安装,跟gis差不多
中午迷迷糊糊我也不知道自己干嘛了
下午—万事开头难
一开始真的是一脸懵逼,看着书上的介绍怎样怎样操作,但是连教我怎样输入代码都没说(哭了)。然后只能硬着头皮看下去了,终于看到头大了,然后就去煮饭吃了哈哈哈哈
晚上—好像找到一点方向了
结合了下午的懵逼,感觉这样子不太行,果然没基础是看不了书的。然后就使用B站学习法了哈哈哈,找到了传智播客的教学,老师是叫苏坤,讲得很生动,印象深刻,受益匪浅,这段话是发自肺腑的,不是打广告哈。教C#基础的赵老师也很不错。
代码总结
drop database TestDatabase--删除数据库
create database TestDatabase--创建数据库
on--数据库
(
name='TestDatabase',
size=10mb,
maxsize=100mb,
filegrowth=5mb,
filename='D:\SQL_Database\TestDatabase.mdf'--数据库类型为*.mdf
)
log on--日志
(
name='TestDatabase_log',
size=10mb,
maxsize=100mb,
filegrowth=5mb,
filename='D:\SQL_Database\TestDatabase.ldf'--数据库日志类型为*.ldf
)
use 公司;--确定要操作的数据库对象
drop table 员工_代码生成--删除表
create table 员工_代码生成--创建表
(
id int identity(1,1),--identity是指从1开始,每次增加1
name varchar(4) not null,--not null是指非空
gender bit not null,
birthdaytime datetime,
phonenumber varchar(20),
adress nvarchar(50)
)
create table TeacherTabel
(
ID int identity (1,1) primary key,--primary key是指主键
Name varchar(10),
Gender bit not null,
Salary money,
Adress nvarchar(50),
Birthday datetime
)
SQL Server类型对应C#类型
(从CSDN上查到的,学习学习)
char、varchar、nchar、nvarchar、text类型区别(也是CSDN其他博主分享的博文,学习学习别人的精华)
- CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。
- VARCHAR。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为
VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。
从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。 - TEXT。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。
- NCHAR、NVARCHAR、NTEXT。这三种从名字上看比前面三种多了个“N”。它表示存储的是Unicode数据类型的字符。我们知道字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到4000之间。和char、varchar比较起来,nchar、nvarchar则最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。
所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar。
如果是存储文章等大段内容的时候,纯英文和数字,用text,含有中文字符的,用ntext。