欢迎投稿

今日深度:

mysql基础知识回顾,mysql基础知识

mysql基础知识回顾,mysql基础知识


创建数据库
creat table test(
#整数通常使用int
test_id int,
#小数通常使用decimal
test_price decimal,
#普通文本通常使用,并使用Default指定默认值
test_name varchar(255) default "Xxx",
#大文本类型使用test
test_desc text,
#图片使用blob
test_img blob,
#日期类型使用DateTime
test_date datetime,
);
-----------------------------------------------------------------
mysql 支持的列类型
1.tinyint,smallint,mediumint,int,bigint
2.float,double
3.decimal(dec)
4.date
5.time
6.datetime
7.timestamp
8.year
9.char
10.varchar
11.binary(定长的二进制字符串类型,以二进制形式保存字符串)
12.varbinary
13.tinyblob,blob,mediumblob,longblob
14.tinytext,text,mediumtext,longtext
15.enum('value1','value2'...)//枚举类型(只能是其中之一)
16.set('value1','value2'...)//集合类型(可以是其中几个)
--------------------------------------------------------------------
#创建数据表,该数据表和user_info完全相同,数据也完全相同
create table hehe
as
select * from user_info;
---------------------------------------------------------------------
#修改表的结构的语法
alert table 表名
add(
#可以定义多个列定义
colum_name datatype [default expr],
...
);
---------------------------------------------------------------------
#为hehe数据表增加一个hehe_id字段,该字段类型为int


alter table hehe
add hehe_id int;
#为hehe数据包增加aaa,bbb字段,两个字段的类型都为varchar(25)
alter table hehe
add aaa varchar(25),bbb varchar(25);
----------------------------------------------------------------------
#将hehe表的hehe_id列修改为varchar(255)类型
alter table hehe
modify hehe_id varchar(255);
#将hehe表的bbb列修改为int类型
alter table hehe
modify bbb int;
----------------------------------------------------------------------
#删除指定的列
alter table hehe
drop column_name
#重命名数据表
alter table hehe
rename to wawa;
----------------------------------------------------------------------
#将wawa表的字段bbb字段重命名为ddd
alter table wawa
change bbb ddd int;
#删除表
drop table 表名
----------------------------------------------------------------------
数据库约束
not null
unique
primary key
foreign key
check
#not null约束
create table hehe(
#建立了非空约束,这意味着hehe_id不可以为null
hehe_id int not null,
#mysql为空约束不能指定名字
hehe_name varchar(25) default 'xyz' not null,
#下面列可以为空,默认值就是为null
hehe_gender varchar(28) null
);


---------------------------------------------------------------------
#增加非空约束
alter table hehe
modify hehe_gender  varchar(30) not null
#取消非空约束
alter table hehe
modify hehe_name varchar(3) null;
#取消非空约束,并指定默认值
alter table hehe
modify hehe_name varchar(255) default 'abc' null;
-------------------------------------------------------------------
unique约束
#建立表时创建唯一约束,使用列级约束语法建立约束
create table unique_test(
#建立了非空约束,着意味着test_id不可以为null
test_id int not null,
#建立了unique约束
test_name varchar(30) unique
);
#创建表时,使用表级约束语法建立约束
create table unique_test(
test_id int not null,
test_name varchar(30),
test_pass varchar(30),
#使用表级约束创建唯一约束
unique(test_name),
constraint test_uk unique(test_pass)
#constrain test1_uk unique(test_name,test_pass)
);
#修改唯一约束
alter table unique_test
add unique(test_name,test_pass);
#为表增加约束
alter table unique_test
modify test_name varchar(30) unique;
-------------------------------------------------------------------
primary key约束
create table primaryKey_test(
primaryKey_id int primary key,
test_name varchar(255)
);
create table primaryTest(
primary_id int not null,
primary_name varchar(29),
constraint pk_test primary key(primary_id)
);


#删除主键约束
alter table test
drop primary key;
#使用表级语法增加主键约束
alter table test
add primary key(test_id ,test_name);
#使用列级约束语法增加主键约束
alter table test
modify test_name varchar(30) primary key;
------------------------------------------------------------------
#为了保证从表参照的主表存在,通常应该先建立主表
create table teacher_table(
#auto_increment
teacher_id int auto_increment,
teacher_name varchar(255),
primary key(teacher_id)
);
create table student_table(
student_id int auto_increment primary key,
student_name varchar(255),
#指定java_teacher参照到teacher_table的teacher_id的列
java_teacher int references teacher_table(teacher_id)
#java_teacher int
#foreign key(java_teacher) references teacher_table(teacher_id)
#constraint student_teacher_fk foreign key(java_teacher) references
teacher_table(teacher_id)
);
---------------------------------------------------------------------------------------------
#check约束
create table test(
test_id int auto_increment primary key,
test_age int not null,
check(test_age>0 and test_age<120)
)

MYSQL的相关知识问题

上面下载地址下载的是一个jar包应该是C#连接MySQL的jar包,
编程语言提供了一个接口,数据库厂商必须实现了这个接口
才能让自己的数据库支持这个编程语言,就像微软的SqlServer
想要支持Java,还是要老老实实的写一个sqljdbc.jar。
mssql是微软的SqlServer数据库,有图形化操作软件SqlServer manager studio,官网上可以免费下载。
 

mysql怎入门?

1.我创建一个数据库,再使用时却出现Database changed 然后就不知道怎么办了
Database changed 表示你现在可以操作移动到的数据库里的数据了,接下来我们就可以使用select查询,用delete删除,用update更新,还可以写并且调用功能更强大的存储过程和触发器~可以做得事情很多的~不过要一点一点来~
2.我一直不明白,数据库是创建在自己的电脑里吗?
数据库就建在你的电脑里~当然要通过数据结构来组织和存储这些数据。关于如何存储的不用着急去探究,先从应用入手。
3.怎样建立和其他电脑的数据联系
你学的是C,那么可以使用ODBC进行连接(MicroSoft的开发工具和语言基本都用这个),如果以后用java了,则可以使用jdbc。这个也不要太急着弄。
4.示例数据库有什么用啊?
示例数据库可以用来测试数据库是否装载成功
对于初学者来说,还可以用于练习(在还没掌握DDL语言前,可以先使用这些既存的表来练习DML的)。

这样说可能有点乱,所以最后总结一下
记得我们当年将数据库的时候是从什么是关系数据库讲起的,讲实体,讲关系,讲关系代数,讲函数依赖。。。。讲了很多偏原理的基础知识后,才开始上机操作。
不过自学的话,建议倒着来,先操作,再去看为什么这么操作。
不知道你的《Mysql技术内幕》是不是第四版的,刚上网下了一本,书不错,不过建议从第二章顺着往下看,先学怎么操作DB,这样能比较快上手,从而建立成就感,更有兴趣学下去。
再配合这在网上找点视频(项目推进的那种),上手势比较快的。
现在爱看书不爱打游戏的青年不多了,兄弟,挺你,祝好运~
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/4094.html NewsArticle mysql基础知识回顾,mysql基础知识 创建数据库 creat table test( #整数通常使用int test_id int, #小数通常使用decimal test_price decimal, #普通文本通常使用,并使用Default指定默认 test_name varchar(255)...
评论暂时关闭