设置了主键的表怎么插入数据

这是我的建表语句

img


这是我的运行结果

img

该怎么修改才能插入数据 还是插入的格式不对

你已经插入这个数据了吧,这两个值不跟数据库中的一样就能插入

img

主键不要重复,你换一个sno cno

键值重复了,改一下cno插入的值

22094230106-1408 这个cno 主键重复了,因为你的表设计的是cno主键,主键是不允许重复的

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7738681
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:对视图 进行增删改 是否能改变其对应的基表的数据
  • 除此之外, 这篇博客: 【数据库】总结中的 具有检查点的恢复技术 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    1. 从重新开始文件中找到最后一个检查点记录在日志文件中的地址,由该地址在日志文件中找到最后一个检查点记录;
    2. 由该检查点记录得到检查点建立时刻所有正在执行的事单务清单ACTIVE-LIST ,建立两个事务队列
      – UNDO-LIST
      – REDO-LIST
      把首先把ACTIVE-LIST 暂时放入UNDO-LIST 队列,REDO队列暂为空。
    3. 从检查点开始正向扫描日志文件,直到日志文件结束
      – 如有新开始的事务Ti, 把Ti 暂时放入UNDO-LIST 队列
      – 如有提交的事务Tj ,把Tj 从UNDO-LIST 队列移到REDO-LIST 队列
    4. 对UNDO-LIST 中的每个事务执行UNDO 操作, 对REDO-
      LIST 中的每个事务执行REDO
  • 您还可以看一下 张传波老师的软件设计是怎样炼成的?课程中的 整个程序需要考虑的设计规范小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    我可以回答这个问题。

    在已设置主键的表中插入数据可以通过以下语句实现:

    INSERT INTO table_name (column1, column2, column3, ...)
    VALUES (value1, value2, value3, ...);
    

    其中,table_name是要插入数据的表名,column1, column2, column3, ...是要插入的列名,value1, value2, value3, ...是要插入的列对应的值。请注意,要确保插入的列与值的数量和顺序与表的主键定义一致。

    示例代码:

    CREATE TABLE test_table (
      id INT PRIMARY KEY,
      name VARCHAR(50)
    );
    
    INSERT INTO test_table (id, name) VALUES (1, 'John');
    

    这样就向test_table表中插入了一条数据,id为1,name为'John'。

    需要注意的是,插入数据时如果违反了主键的唯一性约束,将会导致插入失败。因此,在插入数据之前,需要先确认表中是否已经存在相同主键的数据。

    参考资料: - https://www.mysqltutorial.org/mysql-insert-statement.aspx/ - https://www.w3schools.com/sql/sql_primarykey.asp