数据库的简单理解学习和使用

来源:互联网 发布:聚宝盆是什么软件 编辑:程序博客网 时间:2024/06/08 16:33

F2:编辑选中的文件夹名字

DBMS:DataBase Management System

Table 

主键是数据行的唯一标识:业务主键、逻辑主键 (没有任何业务意义的字段)

GUID:全球唯一标识

NChar:Unicode,用两个字节表示一个字符


select  列名,...  from 表  where  表达式1 and 表达式2 

delete from 表 where 表达式1 and 表达式2

update 表名  set 列1=值  ,列2=值

insert  into  表名(列1,列2.。。。) values (值1,值2 。。。)


利用MySQL CommandLine创建表格:

1、创建一个数据库: create database +数据库名字;

2、使用:use +数据库名字;

3、查看已创建的数据库:show databases;

4、创建表格:create  table new_table(   (回车)

id int,

name varchar(100)

);

数据库的登录:

用户名:机器名/./(local)

ip地址:回环地址:127.0.0.1

服务器名称:.\实例名;. 不加实例名的话就是默认实例

win+R:打开cmd,输入services.msc,打开服务窗口



表格的一些应用:

#给数据库添加了一个列alter table UserInfo add iphone nvarchar(64) null#添加数据,添加一行,这里只添加指定的一列显示有错误insert into UserInfo(ID,Name,Address, iphone) values('001','小王','北京','12223')# 创建了一个新的表格create table DemoTable(Id int ,    Name1 nvarchar(32) )#添加一列alter table UserInfo add DelFlag smallint null#给列添加默认值约束,约束名字DF_表名_列#alter table UserInfo add constraint DF_UserInfo_DelFlag default(0) for DelFlag#不知道为什么这里的default不可以使用#删除数据库中的一列#如果有约束,需要先删除约束再删除列#alter table UserInfo drop constraint DF_UserInfo_DelFlag#alter table UserInfo add DelFlag1 smallint null#删除一列alter table UserInfo drop column DelFlag1 #增加一列alter table demotable add DelFlag smallint null#给表格添加一个主键alter table demotable add constraint DK_demotable_Id primary key(Id)#给表格添加一个唯一键约束alter table demotable add constraint UK_demotable_DelFlag unique key(DelFlag)#在表格UserInfo中添加一个外键,表格的最后面加了一列Name1alter table UserInfo add Name1 int null#添加一个外键关系,先添加一个外键链,外键链关联到哪一个列(error)alter table UserInfo add constraint FK_UserInfo_demotable foreign key(Name1) references demotable(Name1)

数据库的查询 select

#给列起个别名用as #计算列表中有多少行数字select count(*) from UserInfo#找表中最短的列进行统计select count(1) from UserInfo#跟count(*)意义相同select Name1 as AGEselect * from UserInfoselect getdate()#为什么得不到时间#这种方式用来查看系统的状态select @@VERSION #5.7.17-loginsert into UserInfo(ID,Name,Address, iphone) values('002','王','北京','2223')#数据库的查询select * from UserInfo where iphone<>1000#不等于select * from UserInfo where iphone between 10 and 1000#不等于insert into UserInfo(ID,Name,Address, iphone,DelFlag) values('007','aler','北京','2223','0')#模糊查询select * from UserInfo #where iphone like '2%'  #%通配符,代表一个或者多个字符,以2开头的#where iphone like '%3%'   #其中包含3在内的,iphone中包含3的#where iphone like '_3%'#只能匹配一个字符的,第二个字符为3的#where iphone like '%''%'#字符中包含单引号的,‘’两个单引号代表一个单引号#where iphone like '%[0-9]%'  #其中包含数字的#where iphone like '%[2,9]%'  #其中包含数字的2或者9的,应该是这种 h 2 ,2单独存在,而不是一个整体2233    #where iphone like '%[[]%'  #其中包含[的,等同于下面的    #where iphont like '%\[%' escape '\'    #where DelFlag is null#查询DelFlag为null    where Name is not null #查询Name不是null的


排序使用查询

use demosql #每次使用数据库时需要use一下update userinfo set ID=001 ,Name='hello',Address='Chinese',iphone='12884',DelFlag='0',Name1='good'insert into userinfo(ID,Name,Address,iphone,DelFlag) values('010','hello','Chinese','32535','7')#将Address 中有的元素提取出来select Address from userinfogroup by Address  #按照Address进行分组 select Address,count(*),sum(ID) from userinfogroup by Address  #按照Address进行分组,将分组的个数传递出来#经过group后,只能将分组后的信息查询出来#只要使用了group by,select 后面只能跟group by 后面的字段或者是聚合函数select Address,    count(*),    sum(ID)   from userinfo  group byAddress #类型转换#现在将两个列合并到一起显示ID+addressselect convert(nvarchar(64),ID)+iphone from userinfoselect cast(ID as nvarchar(64))+iphone from userinfoselect ID+iphone from userinfodatediff()#两个时间的差dateadd()#增加时间select month('2010-2-3')  #2select lower('HELLO')#转换成小写#转换成小写,用在列中select lower(address) from userinfoselect upper(address) from userinfo#转换成大写select left(iphone,3)  from userinfo#取iphone的左边3个元素select rtrim('  11212  ') #去掉空格#查询前5个并降序排列select top 5 ID from order by time1 desc(error)

原创粉丝点击