我有一个,我需要在数据库之间进行查询,但是我想不出如何做到这一点。
以下是我的数据库结构:
Server.X
数据库.一个
Database.B
Database.C
在数据库中,中有一个存储过程,需要从Database.B中检索数据。通常,我会引用类似于SELECT * FROM [Database.B].[dbo].[MyTable]的数据库,但在SQL中似乎不允许这样做。
Msg 40515, Level 15, State 1, Line 16 Reference to database and/or server name in 'Data
我需要对所有数据库(具有相同模式的数据库)运行一个查询,问题是这些数据库是Elastic中的Azure数据库。我读到这可以使用中的“中央管理服务器”功能来完成,但我已经安装了最新版本18.3,但是当我尝试在“中央管理服务器”下展开Azure SQL server时,会出现以下错误:
Azure SQL数据库不能用作中央管理服务器
我试图对所有数据库运行的查询类型如下所示,它在本地Server实例上工作良好,但在Azure SQL Server上不工作。
SET NOCOUNT ON;
IF OBJECT_ID (N'tempdb.dbo.#temp') IS NOT
我在这里有一个小/奇怪的行为,我在网上寻找,所以,我没有找到任何回应。
我不得不承认,这是我第一次使用数据库,我知道如何将它们与SQL结合使用,但实际上从未使用过。
无论如何,我的应用程序插入数据有问题,我只是创建了一个非常简单的项目来测试,但还没有解决方案。
我有一个使用Server的示例数据库
Id - int (标识主键) Name - nchar(10) (非空)
这张桌子叫“人”,简单得像馅饼。
我有这个:
static void Main(string[] args)
{
var db = new ExampleDBDataContext {Log = Console.Ou
具有从不同数据库连接SQL表的旧应用程序,如下所示:
SELECT a.value, b.value
FROM databaseA.dbo.tableA AS a
JOIN databaseB.dbo.tableB AS b
ON a.thekey == b.thekey
作为第三方,我们必须接受主要实现者对客户使用许可Azure SQL SAAS (Software;我是新手,如果某些术语不正确)的决定。
在Azure中是否有可能让databaseA和databaseB (该部分是可能的,通过SSMS检查)并执行相同的连接(该部分对我来说是未知的)?
我试
我认为SQL是建立在Server 2012之上的,但是创建新数据库时的兼容性级别是100 ( Server 2008的兼容性级别),而不是110。
SELECT compatibility_level FROM sys.databases WHERE name = 'Test';
我尝试使用我知道的两种方法将其更改为110:
ALTER DATABASE Test SET COMPATIBILITY_LEVEL = 110;
--> Incorrect syntax near 'SET'.
EXEC sp_dbcmptlevel 'Test
我已经创建了一个从oracle到sql (已实现的异构服务)的dblink 'POC_HS‘,并且我能够成功地从DSN(用于sql server)连接到的默认数据库中提取数据。
因此,这个“select* from Oracle”在Test@POC_HS数据库上工作得很好,因为“Test”表驻留在缺省数据库( System DSN所连接的数据库)中。
但当我这样做时,'select * Abc.Test@POC_HS‘,其中测试表位于非默认数据库'ABC’数据库中,抛出一个错误,如下所示:
ORA-00942:表或视图不存在使用ODBCODBC SQL Server D
我有一个具有2个数据库的SQL Azure数据库服务器,我需要将记录从第一个数据库的一个表插入到另一个数据库的另一个表中。这两个数据库位于同一服务器上,具有相同的安全设置/登录。
我试过了:
INSERT INTO DatabaseB.dbo.TableB (ColumnA, ColumnB)
SELECT TableA.ColumnA, TableA.ColumnB
FROM DatabaseA.dbo.TableA
当我使用SSMS运行SQL时,我得到:
Msg 40515, Level 15, State 1, Line 16
Reference to database and/or s
我使用SQLite在本地环境中构建了一个应用程序,虽然我喜欢SQLite,但有些情况要求我使用SQL server。我创建了一个Azure SQL数据库,并在我的project.json中将SQLite引用更改为SQLServer引用,以及AddSqlServer()和UseSqlServer()方法,但我收到了一个错误:
Could not load file or assembly 'System.Net.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one o
我在应用程序中遇到这样的情况:为了解决死锁问题,我需要使用表锁提示或将事务隔离级别设置为默认的Read Committed之外的其他值。我使用的是面向服务的体系结构,每个服务调用都作为一个原子操作进行操作,而Linq To Sql则充当一个轻量级DAL。每个服务调用调用我的业务层并声明一个新的事务,如下所示:
using (var scope = new TransactionScope())
{
// Get datacontext
// do Business Logic stuff, including database operations via Linq To Sql
我正在开发一个小型CMS,我的客户将使用。这些客户端中的每一个都将在core-CMS SQL数据/表结构之上构建自定义SQL表,以支持其单独的需求。
现在,在使用MySQL工作台时,我想要:
1)在MySQL工作台上为每个客户端保留单独的模式。
2)能够轻松地在所有客户端模式之间分发核心SQL更改。(不需要分发特定于客户端的更改!)
3)保持核心表和特定于客户端的表之间的关系,因为它们稍后将存在于相同的模式中。
-> I.e. my core SQL will have users and one of my (just one, not the others) client's
正如一句谚语所说的,“没有什么是不可能的”,只是好奇地知道在Azure SQL数据库中如何获得相同的功能,这种功能可以在单独单击的前提下运行吗?
酒店内的,
在执行的一次单击中,在“USE”命令的帮助下,我们实际上查询了不同数据库中的内容。例如,
USE db_name1;
SELECT DB_NAME();
GO
USE db_name2;
SELECT DB_NAME();
GO
借助查询-->SQLCMD模式,我们实际上在不同的服务器和数据库中查询内容。例如,
:CONNECT server_name1
USE db_name1;
SELECT @@SERVERNAME;
GO