命令行对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列的值。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

透過sudo指令,使用者可以在提升權限模式下執行指令,而無需切換到超級使用者模式。本文將介紹如何在Windows系統中模擬類似sudo指令的功能。什麼是數道司令部? Sudo(「超級使用者do」的縮寫)是一種命令列工具,允許基於Unix的作業系統(如Linux和MacOS)的使用者以提升的權限執行命令,這些權限通常是管理員所擁有的。在Windows11/10中執行SUDO命令然而,隨著最新發布的Windows11Insider預覽版推出,Windows用戶現在也可以體驗到這項功能。這項新功能使用戶能夠

本文將向讀者介紹在Win11系統中如何使用命令提示字元(CommandPrompt)來尋找網路介面卡的實體位址(MAC位址)。 MAC位址是網路介面卡(NIC)的唯一標識符,它在網路通訊中扮演著重要角色。透過命令提示符,使用者可以輕鬆地獲取到當前電腦上所有網路適配器的MAC位址信息,這對於網路故障排查、配置網路設定等任務非常有幫助。方法一:使用「命令提示字元」1、按【Win+X】組合鍵,或【右鍵】點選工作列上的【Windows標誌】,在開啟的選單項目中,選擇【執行】;2、執行窗口,輸入【cmd】指令,然

cmd視窗中提示telnet不是內部或外部命令這個問題想必曾經也深深的困擾著你吧,這個問題的出現並不是因為用戶們的操作哪裡有什麼不對用戶們也不用太擔心只需要一些小小的操作設定就可以讓cmd視窗提示telnet不是內部或外部指令這個問題迎刃而解,一起來看看小編今天為大家帶來的cmd視窗提示telnet不是內部或外部指令解決方法吧。 cmd視窗提示telnet不是內部或外部指令解決方法:1、開啟電腦的控制面板。 2、找到程式和功能。 3、找到左側的啟動或關閉Windows功能。 4、找到「telnet客戶端

Win11系統中,可以透過指令來啟用或停用Hyper-V增強會話模式。本文將介紹如何使用指令來進行操作,幫助使用者更好地管理和控制系統中的Hyper-V功能。 Hyper-V是Microsoft提供的一種虛擬化技術,它內建在WindowsServer和Windows10、11(家用版除外)中,允許使用者在Windows系統中執行虛擬作業系統。雖然虛擬機器與宿主機作業系統隔離,但透過設置,它們仍然能夠使用宿主機的資源,如音效卡和儲存設備等。其中一個關鍵設定就是啟用「增強會話模式」。增強會話模式是Hyper

一、概述sar命令透過從系統活動中收集的資料來展示系統的使用報告。這些報告由不同部分組成,每個部分都包含資料類型和收集資料的時間。 sar指令的預設模式顯示存取CPU的各種資源(如使用者、系統、I/O調度等)在不同時間增量下的CPU使用率。此外,它還顯示給定時間段內空閒CPU的百分比。報告底部列出了每個數據點的平均值。 sar預設每10分鐘報告一次收集的數據,但您可以使用各種選項來篩選和調整這些報告。與uptime指令類似,sar指令也可協助您監控CPU的負載狀況。透過sar,您可以了解過度負載發

Linux重啟服務的正確方式是什麼?在使用Linux系統時,經常會遇到需要重新啟動某個服務的情況,但是有時我們可能會在重新啟動服務時遇到一些問題,例如服務沒有真正停止或啟動等情況。因此,掌握正確的重啟服務的方式是非常重要的。在Linux中,通常可以使用systemctl指令來管理系統服務。 systemctl指令是systemd系統管理員的一部分

LSOF(ListOpenFiles)是一個命令列工具,主要用於監控類似Linux/Unix作業系統的系統資源。透過LSOF命令,使用者可以獲得有關係統中活動檔案以及正在存取這些檔案的進程的詳細資訊。 LSOF能夠幫助使用者識別目前佔用檔案資源的進程,從而更好地管理系統資源和排除可能的問題。 LSOF的功能強大且靈活,可以幫助系統管理員快速定位檔案相關的問題,例如檔案洩漏、未關閉的檔案描述符等。透過LSOF命令LSOF命令列工具允許系統管理員和開發人員:確定目前正在使用特定檔案或連接埠的進程,在連接埠衝突的情

Linux是一個強大的作業系統,它提供了許多高效的進程間通訊機制,如管道、訊號、訊息佇列、共享記憶體等。但是,有沒有一種更簡單、更靈活、更有效率的溝通方式呢?答案是有的,就是eventfd。 eventfd是Linux2.6版本引入的一種系統調用,它可以用來實現事件通知,也就是透過一個檔案描述符來傳遞事件。 eventfd包含一個由核心維護的64位元無符號整數計數器,進程可以透過對這個檔案描述子進行read/write來讀取/改變計數器的值,從而實現進程間通訊。 eventfd有什麼優點呢?它有以下幾個特
