Navicat 底子操纵和 SQL 语句详解
Navicat 是一个流行的数据库管理工具,支持多种数据库(如MySQL、MariaDB、SQL Server、PostgreSQL等)。在Navicat中,你可以通过GUI界面来管理数据库,也可以直接编写SQL语句。下面我将介绍如何在Navicat中执行一些底子的操纵,包括表的创建、CRUD操纵等。1.创建表的SQL语句
在Navicat中,创建表的SQL语句可以通过 CREATE TABLE 下令来实现,表的创建需要界说字段的名称、数据类型和约束条件。
SQL语句示例:
CREATE TABLE Students(
StudentId INT AUTO_INCREAMENT PRIMARY KEY, --自增主键
Name VARCHAR(100) NOT NULL, --姓名字段,不能为空
Age INT NOT NULL, --年龄字段,不能为空
EnrollmentDate DATE --注册日期
); 解释:
• Students 是主键字段,使用 AUTO_INCREAMENT 让它自动递增。
• Name 字段的类型是 VARCHAR(100),表示最长100个字符,且不能为空(NOT NULL)。
• Age 字段的类型是 INT,也不能为空。
• EnrollmentDate 字段存储日期,类型为DATE。
在Navicat中创建表:
1.在Navicat的GUI中,右键点击数据库 -> 选择“新建表”。
2.按照界面提示填写字段名称、数据类型等。
3.也可以直接使用SQL编辑器执行上述的CREATE TABLE语句。
2.插入数据的SQL语句
插入数据使用INSERT INTO 语句,将数据插入到表中。
SQL语句示例:
INSERT INTO Students(Name,Age,EnrollmentDate)
VALUES ('JOHN',20, '2024-12-12'); 解释:
• Students是表名,括号中的Name、Age、EnrollmentDate是要插入数据的字段。
• VALUES 中的 'JOHN'、20、'2024-12-12' 是对应字段的值。
固然,你也可以一次性插入多条数据:
INSERT INTO Students(Name,Age,EnrollmentDate)
VALUES
('Alice', 22, '2024-01-12'),
('Bob', 21, '2024-02-10'),
('Charlie', 23, '2024-03-18');
3.查询数据的SQL语句(READ)
查询数据使用SELECT 语句,支持简朴查询和复杂查询。
简朴查询:
查询所有学生数据:
SELECT * FROM Students; 查询指定列数据:
SELECT Name,Age FROM Students; WHERE 条件查询:
SELECT * FROM Students Where Age > 18; ORDER BY 排序:
SELECT * FROM Students ORDER BY Age DESC; --按年龄降序排列 LIMIT 限制返回结果:
SELECT * FROM Students LIMIT 5; --只返回前5条数据 延伸:使用LIKE 模糊查询:
SELECT * FROM Students Where Name LIKE 'A%'; -- 查找名字以A开头的学生 4.更新数据的SQL语句(UPDATE)
使用 UPDATE 语句可以修改表中的数据。
UPDATE Students
SET Age = 25
WHERE Name = 'Alice'; 解释:
• SET Age = 25 表示将Age字段的值更新为25。
• WHERE Name = 'Alice' 是条件,表示只更新Name 为Alice 的那一行。
固然,也可以同时更新多个字段:
UPDATE Students
SET Age = 22, EnrollmentDate = '2024-02-01'
WHERE Name = 'Bob'; 5.删除数据的SQL语句(DELETE)
删除数据使用 DELETE FROM 语句,可以根据条件删除特定行。
DELETE FROM Students
WHERE Name = 'Charlie'; 解释:
• DELETE FROM Students 表示从Students表中删除数据。
• WHERE Name = 'Charlie' 是条件,表示只删除Name 为Charlie的那一行。
删除所有数据(慎用):
DELETE FROM Students; 6.复杂查询与延伸
JOIN操纵(毗连查询):
JOIN 用于从多个表中关联查询数据。假设我们另外有一张表Courses,他记录学生的课程信息。
CREATE TABLE Courses(
CoursesId INT AUTO_INCREMENT PRIMARY KEY,
CoursesName VARCHAR(100),
StudentsId INT, --外键,关联Students表
FOREIGN KEY(StudentsId) REFERENCES Students(StudentsId)
); 查询学生及其所选课程信息:
SELECT Students.Name,Courses.CoursesName
FROM Students
JOIN Courses ON Students.StudentsId = Courses.StudentsId; 解释:
• JOIN Courses ON Students.StudentsId = Courses.StudentsId 用于将Students 表和Courses表毗连,条件是两表的StudentsId相称。
• 结果将体现学生的姓名和他们所选的课程。
聚合函数查询:
• COUNT:统计总行数。
SELECT COUNT(*) AS TotalStudents FROM Students; • SUM:盘算某列的总和(例如学生的总年龄)。
SELECT SUM(Age) AS TotalAge FROM Students;
• AVG:盘算均匀值。
SELECT AVG(Age) AS AverageAge FROM Students;
• GROUP BY :按某列分组并盘算每组的统计信息。比如,按年龄分组,统计每个年龄的学生数量。
SELECT Age, COUNT(*) AS CountOfStudents
FROM Students
GROUP BY Age;
总结:
1.表的创建:通过CREATE TABLE 语句可以在Navicat中创建表。
2.CRUD 操纵:
• 创建(插入数据)使用 INSERT INTO。
• 查询数据使用SELECT, 可以使用条件、排序、分组等功能。
• 更新数据使用UPDATE。
• 删除数据使用DELETE FROM.
3. 复杂查询:如JOIN毗连查询、聚合函数(COUNT、SUM、AVG等)。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]