我处于这样一种情况,我将为数据库生成一个脚本,我可以在另一台服务器上运行并获得与原始数据库相同的数据库,但没有任何数据.实质上,我希望最终得到一个捕获数据库模式的大型创建脚本.
我在安装了SQL Server 2000的环境中工作,我无法安装2005客户端工具(如果他们有帮助).我负担不起RedGate,但我真的希望在另一台服务器上拥有一个具有相同架构的数据库.
有什么建议?任何简单的.exe(无需安装)工具,技巧或T-SQL技巧都将非常受欢迎.
更新:我正在使用的数据库有200多个表和几个外键关系和约束,因此手动编写每个表并将脚本粘贴在一起并不是一个可行的选择.我正在寻找比这个手动解决方案更好的东西
其他更新除非我完全遗漏了某些内容,否则这不是使用SQL 2000工具的可行解决方案.当我选择在数据库上生成创建脚本的选项时.我最终得到一个包含CREATE DATABASE命令的脚本,并且没有创建任何对象 - 表,约束等.SQL 2005的Management Studio也可以处理这些对象,但数据库处于没有对象的环境中我可以将Management Studio的安装连接到它.
我需要创建一个以字符串作为参数的Oracle DB函数.该字符串包含字母和数字.我需要从这个字符串中提取所有数字.例如,如果我有一个像RO1234这样的字符串,我需要能够使用一个函数,比如说extract_number('RO1234'),结果将是1234.
更准确地说,这是将使用此函数的SQL查询.
SELECT DISTINCT column_name, extract_number(column_name)
FROM table_name
WHERE extract_number(column_name) = 1234;
Run Code Online (Sandbox Code Playgroud)
问题:如何使用Oracle SQL Developer或SQLTools客户端应用程序中的任何一个向我的Oracle数据库添加这样的函数,以便能够像上例中一样使用它?
我正在尝试在 VSCode SQLTools 上格式化我的 SQL 代码,以将使用 DataGrip 和 Webstorm 的其他团队成员匹配到 VScode SQLTools 上,但在不安装节点模块的情况下无法匹配 SQL 格式(存储库用于指标)。有人有 SQLTools 的 Settings.json 或与 DataGrip SQL 格式匹配的 VSCode 扩展吗?
这是 DataGrip 中的格式
WITH timeRange(unix_start_time, unix_end_time) AS (VALUES (1663048800, 1663135199))
Run Code Online (Sandbox Code Playgroud)
在 SQLTools 中格式化时的更改
WITH timeRange(unix_start_time, unix_end_time) AS (
VALUES (1663048800, 1663135199)
)
Run Code Online (Sandbox Code Playgroud) 有没有更好的替代方法使用SQL Tools和TOAD为Oracle DB编写存储过程和查询?
更好的是能够调试大型查询和存储过程.
欢迎任何指示!