当前位置: 首页 > 面试题库 >

SQL脚本创建插入脚本

祁高格
2023-03-14
问题内容

我会解释一个模糊的标题。

我正在编写一个SQL脚本来为数据库中表的每一行创建一个插入语句,纯粹是为了能够将该数据应用回另一个数据库。

这是我目前所拥有的:

SELECT 'INSERT INTO products (id,name,description) VALUES ('||ID||','''||name||''','''||description||''');' FROM products

它的效果很好,输出如下:

INSERT INTO products (id,name,description) VALUES (1,'Lorem','Ipsum');
INSERT INTO products (id,name,description) VALUES (2,'Lorem','Ipsum');
INSERT INTO products (id,name,description) VALUES (3,'Lorem','Ipsum');
INSERT INTO products (id,name,description) VALUES (4,'Lorem','Ipsum');

问题是,如果字段之一为空,则该行将无法生成更新脚本,在输出文件中,该行仅是空白。显然,由于有20多个字段,因此一些可选内容意味着几乎不会生成我的任何脚本。

有没有办法解决这个问题?


问题答案:

对于NULL字段,您可以执行以下操作

Select COALESCE(Name, '') from...

合并函数返回列表中的第一个非空值。

对于真正空白的字段(例如,空的nvarchar),我相信您上面的脚本将起作用。



 类似资料:
  • 问题内容: 想通过一个简单的 sql 脚本(例如填充测试数据库)将文件插入到 BLOB 字段中。我知道如何通过代码做到这一点,但我找不到如何执行 sql 脚本本身。 我试图通过路径,即 但这失败了。 在代码中(例如 java),很容易创建一个 File 对象并将其传入,但是直接从 sql 脚本中,我被卡住了...... 任何想法? 问题答案: 为了测试,您可以插入文字十六进制字节或使用该函数,如下

  • Hyperf 提供了创建模型的命令,您可以很方便的根据数据表创建对应模型。命令通过 AST 生成模型,所以当您增加了某些方法后,也可以使用脚本方便的重置模型。 php bin/hyperf.php gen:model table_name 创建模型 可选参数如下: 参数 类型 默认值 备注 --pool string default 连接池,脚本会根据当前连接池配置创建 --path strin

  • 由Autoconf生成的配置脚本通常被称为configure。在运行的时候,configure 创建一些文件,在这些文件中以适当的值替换配置参数。由configure创建的文件有: 一个或者多个'Makefile'文件,在包的每个子目录中都有一个(参见 Makefile中的替换 ) 有时创建一个C头文件,它的名字可以被配置,该头文件包含一些#define命令 (参见 配置头文件 ) 一个名为'co

  • 创建组件脚本 在 Cocos Creator 3D 中,脚本也是资源的一部分。你可以在资源编辑器中通过点击"创建"按钮来添加并选择 TypeScript 来创建一份组件脚本。此时你会在你的资源编辑器中得到一份新的脚本: 一份简单的组件脚本如下: import { _decorator, Component, Node } from 'cc'; const { ccclass, property }

  • 问题内容: 我想编写一个脚本来在SQL Server Express中创建一个用户(使用密码)。另外,我想为该用户分配全部权限。 问题答案: 根据您的问题,我认为您可能对 User 和 Login 之间的区别有些困惑。一个 登录 的是SQL Server作为一个整体上的账户- 有人谁是能够登录到服务器,谁拥有一个密码。一个 用户 是一个 登录 访问到特定的数据库。 创建 登录 很容易,并且必须(显

  • 创建和使用脚本 游戏对象的行为由绑定的 组件 所控制。尽管 Unity 内置的组件非常灵活多样,但是你很快就会发现它们提供的功能远远不够,为了实现你所要的游戏功能,你需要超越它们才行。Unity 支持通过 脚本 创建属于你自己的组件。在组件中,随着时间的推移,你可以触发游戏事件、修改组件属性,还可以以任何你喜欢的方式来响应用户输入。 Unity 内置支持两种编程语言: C# 一种工业标准语言,类似