HI Paul,
select @@version gives:
Adaptive Server Enterprise/16.0 GA PL01/EBF 22540 SMP/P/X64/Windows Server/ase160sp00pl01/3523/64-bit/FBO/Tue Apr 15 19:04:17 2014
exec MyDb..sp_oledb_columns @table_qualifier = "MyDb", @table_owner = "dbo", @table_name = "target" gives:
TABLE_CATALOG,TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_GUID,COLUMN_PROPID,ORDINAL_POSITION,COLUMN_HASDEFAULT,COLUMN_DEFAULT,COLUMN_FLAGS,IS_NULLABLE,DATA_TYPE,TYPE_GUID,CHARACTER_MAXIMUM_LENGTH,CHARACTER_OCTET_LENGTH,NUMERIC_PRECISION,NUMERIC_SCALE,DATETIME_PRECISION,CHARACTER_SET_CATALOG,CHARACTER_SET_SCHEMA,CHARACTER_SET_NAME,COLLATION_CATALOG,COLLATION_SCHEMA,COLLATION_NAME,DOMAIN_CATALOG,DOMAIN_SCHEMA,DOMAIN_NAME,DESCRIPTION
'MyDb','dbo','target','e_type_id',,,1,false,,16,false,131,,,,8,0,,,,,,,,,,,
On MsSql select @@version gives:
Microsoft SQL Server 2012 - 11.0.2100.60 (X64)
Feb 10 2012 19:39:15
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
DDL & insert:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[T_SEC_EXCHANGE](
[exchange_id] [int] NOT NULL,
[exchange_type_id] [numeric](8, 0) NOT NULL,
[code] [varchar](50) NOT NULL,
[name] [varchar](40) NOT NULL,
[open_time] [datetime] NULL,
[close_time] [datetime] NULL,
[last_action_by] [int] NOT NULL,
[last_action_datetime] [datetime] NOT NULL,
[SYSTEM_INSERTED] [datetime] NULL,
[SYSTEM_UPDATED] [datetime] NULL,
[SYSTEM_CHANGEDBY] [nvarchar](50) NULL,
[SYSTEM_PRIORITY] [int] NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[T_SEC_EXCHANGE] ADD CONSTRAINT [DF__T_SEC_EXC___4E0988E7] DEFAULT (getdate()) FOR [SYSTEM_INSERTED]
GO
ALTER TABLE [dbo].[T_SEC_EXCHANGE] ADD CONSTRAINT [DF__T_SEC_EXC___4EFDAD20] DEFAULT (getdate()) FOR [SYSTEM_UPDATED]
GO
ALTER TABLE [dbo].[T_SEC_EXCHANGE] ADD CONSTRAINT [DF__T_SEC_EXC___4FF1D159] DEFAULT ('UNKNOWN') FOR [SYSTEM_CHANGEDBY]
GO
ALTER TABLE [dbo].[T_SEC_EXCHANGE] ADD CONSTRAINT [DF__T_SEC_EXC___50E5F592] DEFAULT ((1)) FOR [SYSTEM_PRIORITY]
GO
INSERT INTO [dbo].[T_SEC_EXCHANGE]
([exchange_id]
,[exchange_type_id]
,[code]
,[name]
,[open_time]
,[close_time]
,[last_action_by]
,[last_action_datetime]
,[SYSTEM_INSERTED]
,[SYSTEM_UPDATED]
,[SYSTEM_CHANGEDBY]
,[SYSTEM_PRIORITY])
VALUES
(
0, 1, 'XML', 'OMLX THE LONDON SECURITIES AND DERIVATIV', NULL, NULL, 936,'2004-02-25 09:36:23.177',
'2015-07-24 11:27:00.527','2015-07-24 11:27:00.527','dave', 1)
Additionally, the method which gets the data from MsSql is:
public static void GetDataReaderSelect_t_sec_exchange(out SqlConnection conn, out IDataReader reader)
{
conn = new SqlConnection(@"Data Source=LOCALHOST;Initial Catalog=MySqlDb;Integrated Security=SSPI");
conn.Open();
string sql = "SELECT top 1 exchange_type_id from t_sec_exchange order by 1 desc"; //exchange_type_id is a NUMERIC (8,0) in SqlSvr.
Console.WriteLine("Reader: " + sql);
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.CommandTimeout = 60;
reader = cmd.ExecuteReader();
}
Dave