用sqlite语句数据库创建学生表、课程表,选课表
时间: 2024-01-15 09:05:36 浏览: 34
创建学生表:
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER,
gender TEXT,
address TEXT
);
创建课程表:
CREATE TABLE IF NOT EXISTS courses (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
teacher TEXT,
credit INTEGER
);
创建选课表:
CREATE TABLE IF NOT EXISTS course_selections (
id INTEGER PRIMARY KEY AUTOINCREMENT,
student_id INTEGER NOT NULL,
course_id INTEGER NOT NULL,
score INTEGER,
FOREIGN KEY (student_id) REFERENCES students (id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (course_id) REFERENCES courses (id) ON DELETE CASCADE ON UPDATE CASCADE
);
相关问题
Android使用sqlite语句创建数据库数据表,怎么让数据表之间有关键性
要让数据库中的数据表之间有关联,可以在数据表的创建语句中添加外键约束。外键约束可以确保数据表之间的数据一致性和完整性,以便于数据的管理和维护。
以下是一个示例的创建表语句,其中包含了外键约束:
```
CREATE TABLE Orders (
OrderID INTEGER PRIMARY KEY,
OrderDate DATE,
CustomerID INTEGER,
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);
CREATE TABLE Customers (
CustomerID INTEGER PRIMARY KEY,
CustomerName TEXT,
ContactName TEXT,
Country TEXT
);
```
在上述示例中,Orders表中的CustomerID列是一个外键,它参照了Customers表中的CustomerID列。这意味着,Orders表中的每个CustomerID必须在Customers表中存在。如果试图在Orders表中插入一个不存在于Customers表中的CustomerID,则会触发外键约束,防止数据不一致或不完整的情况发生。
用C语言编写使用sqlite创建一个学生档案数据库的表
可以使用以下代码来创建一个学生档案数据库表:sqlite3 * db;
char * err;/* 创建学生档案数据库表 */
char * sql = "CREATE TABLE StudentRecords("
"id INTEGER PRIMARY KEY,"
"name TEXT,"
"phone INTEGER,"
"age INTEGER,"
"address TEXT);";/* 检查db是否为NULL */
if (db != NULL) {
/* 执行SQL语句 */
rc = sqlite3_exec(db, sql, 0, 0, &err); /* 检查SQL语句是否执行成功 */
if (rc != SQLITE_OK) {
fprintf(stderr, "SQL error: %s\n", err);
}
else {
fprintf(stdout, "Student Records table successfully created\n");
}
}