程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 命令行對mysql的基本操作

命令行對mysql的基本操作

編輯:MySQL綜合教程

命令行對mysql的基本操作


啟動mysql服務:   net start mysql    (使用這個命令啟動mysql,需要把mysql注冊到服務列表中,如果是wamp自帶的mysql注冊到服務列表還有點麻煩,如果有高手希望告知一二)   登陸mysql:   mysql -u root -p 回車,輸入密碼。   查看用戶:use mysql 回車,select * from user; 回車。這樣能列出所有用戶,但是比較亂,如果只需要查看用戶名、允許登陸的主機,那麼使用 select User,Host from user;   創建用戶: create user 'zhangxiansen'@'localhost' identified by 'zhangxiansen';   如上命令就能創建一個賬號為zhangxiansen,1、密碼為zhangxiansen的用戶,第一個zhangxiansen是賬號,第二個zhangxiansen是密碼;2、@後面的是允許登陸的主機,可以是ip地址、localhost、%,%代表允許任何地方可以登陸,localhost只允許使用localhost登陸,ip地址只能在對應ip的機器上登陸。   用戶授權: grant all on *.* to 'zhangxiansen'@'localhost';   該命令可以給能用localhost登陸的zhangxiansen賬戶授予對所有數據所有表的所有權限。1、all 代表所有權限,如果只授予增刪權限,則用add,delete代替all;2、第一個*代表所有數據庫,如果指定test_data數據庫,則用test_data代替第一個*,第二個*代表所有表,如果指定stu表,則用stu代替第二個*;3、to後面的就是指定授予權限的用戶,同時還應該指定允許登陸的地址,即@後面的。   (創建用戶以及授權在http://my.oschina.net/u/1179414/blog/202377有很詳細的解釋。)   創建數據: create database test_data(數據庫名字,自己定義); 回車。   (在創建表之前需要指定在哪個數據庫中建,所以一般需要使用use命令,就像上面use mysql,指定對mysql數據庫進行操作。)   創建表:  create table stu( stuId int primary key auto_increment, -- primary key設置主鍵,auto_increment設置列自增。 stuName varchar(15) not null, roomId int   );  create table classRoom(  roomId int primary key auto_increment,  roomName int  );   1、-- 是數據中的注釋;2、在最後一列後面不需要逗號;3、最後的收括號後面需要加上分號。   修改列屬性: alter table classRoom modify roomName char(10);   上面我創建classRoom表名字字段是int型的,我們就可以用modify命令修改。1、classRoom是需要修改列的表;2、roomName需要修改的列。   添加列: alter table stu add column age int not null;   該命令可以給stu表添加age列。1、stu需要添加列的表,age需要添加的列,後面跟上列的類型(必須)以及各種約束(自選)。   添加外鍵: alter table stu constrain stu_room foreign key(roomId) references classRoom(roomId); 該命令可以給stu表的roomId添加外鍵約束。1、stu需要添加外鍵約束的表;2、stu_room外鍵名字,自定義;3、第一個roomId是stu表中的列,第二個則是classRoom中的列。添加外鍵還可以在創建表結構的時候就一並創建,例如:  create table desk( deskId int primary key auto_increment, roomId int, constrain desk_room(外鍵名) foreign key(roomId) references classRoom(roomId)  );   這樣同樣可以創建外鍵約束。   創建主鍵:   如上,在id列後面 primary key 可以創建主鍵。如果主鍵有多列,例如:  create table rectangle( wide int not null, len int not null, primary key(wide,len)  );   這樣rectangle表的主鍵就由wide、len列組成。(這僅僅是個例子,意在說明多列主鍵的創建方法,在表結構設計上有問題。)   增刪查改: insert into classRoom(roomName) values('402');   該命令就在classRoom表中插入一條數據,roomId是自增長,所以不需要手動插入值。 insert into desk(roomId) values(1);   該命令可以在desk表中插入一條數據,由於roomId是外鍵,那麼在classRoom表中必須要有roomId等於1的數據才能成功插入。 delete from classRoom where roomId=1;   該命令可以在classRoom表中刪除roomId=1的一行數據,由於有外鍵,刪除時可能會影響desk、stu表中的數據,具體可以看一看外鍵的屬性介紹。 update classRoom set roomName='403' where roomId=1;   如果classRoom表中存在roomId等於1的數據,則該行數據的roomName值將會修改為403。   select * from classRoom where roomId=1;   該命令查找roomId=1的數據。如果需要指定查找的列,那麼使用如下命令: select roomName from classRoom where roomId=1;   該命令只查找roomName列的值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved