Qtsqlsever数据库设置两个主键
时间: 2023-08-10 09:03:52 浏览: 144
在 SQL Server 数据库中,一个表只能有一个主键,但是可以使用联合主键来实现类似于有两个主键的效果。具体步骤如下:
1. 打开数据库连接:
```cpp
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC3");
db.setDatabaseName("DRIVER={SQL Server};SERVER=127.0.0.1,1433;DATABASE=testdb;UID=sa;PWD=123456");
if (!db.open()) {
qWarning() << "Failed to connect to database.";
}
```
2. 创建表格:
```cpp
QSqlQuery query;
query.exec("CREATE TABLE users (id1 INT, id2 INT, name VARCHAR(50), PRIMARY KEY (id1, id2))");
```
3. 设置联合主键:
```cpp
// 不需要额外设置联合主键
```
这里将 `id1` 和 `id2` 两个字段作为联合主键,使用 `PRIMARY KEY` 关键字设置即可。在使用联合主键时,一定要保证这两个字段组合起来是唯一的,否则插入数据时会报错。
阅读全文