【问题标题】:Connecting to oracle 11g on Red hat linux from windows server using asp.net使用 asp.net 从 Windows 服务器连接到 Red hat linux 上的 oracle 11g
【发布时间】:2012-07-13 13:55:48
【问题描述】:

我们在 Windows 服务器上使用 ASP.NET 使用 sql server 2008r2 开发和测试了我们的应用程序。现在我们需要将数据库从 windows 移动到 red hat linux 上的 oracle。

我们还没有设置基础设施来进行测试。同时我想知道是否有人成功地完成了这种事情。指向任何资源的指针将是一个很大的优势。

更改连接字符串是唯一需要做的事情,还是 Linux 中有任何特定配置允许这样做?

一旦我准备好环境,我会验证这一点,但如果有人有任何类似的经验,请先分享一下。

提前致谢。

P.S:为了将表结构、存储过程等迁移到 oracle,我们将使用 Sql Developer 工具。

【问题讨论】:

  • 从连接的角度来看,connectionString 的改变应该没问题。您是否使用任何 ORM 访问数据库?
  • 没有 ORM,我们有一个数据层,它与提供者无关,可以根据需要插入任何提供者。
  • 那么我看不到任何重大问题,因为验证了连接性,因为数据访问层已经建立为与数据库无关。
  • 谢谢..得到环境,如果我遇到可能会尝试并发布。

标签: asp.net windows linux oracle sql-server-2008-r2


【解决方案1】:

我想回答我的问题,因为迁移到 oracle 并不是那么简单,但是有一些技巧可以帮助任何人在 windows 或 linux 上迁移到 oracle 而不那么头痛。

Sql 开发者工具首先将 sqlserver 模式和数据迁移到 oracle,包括存储过程、约束、触发器等。

它还可以很好地进行数据类型映射,并在需要时提供重新映射数据类型的选项。

一些注意事项和注意事项。

  1. Oracle 将存储过程名称的长度限制为大约 30 个字符。这是您需要进行一些手动重命名的区域,因为迁移 SP 或名称超过 30 个字符的标识符可能会被截断。

  2. 您可能面临的另一个常见问题是日期插入和格式设置。您可以使用以下 sn -p 来避免头痛。常见错误是“Not a valid month”。

OracleConnection conn = new OracleConnection(oradb); // C# conn.Open(); OracleGlobalization session = conn.GetSessionInfo(); session.DateFormat = "DD.MM.RR"; // 这里根据需要改变格式 conn.SetSessionInfo(会话);

  1. 当插入或更新数据或相关错误时,最烦人的错误是字符到数字的转换。

这里的问题是,当您将参数添加到 sql 提供程序的命令对象时,绑定是按名称发生的,但对于 Oracle.DataAccess,默认绑定是按位置。这是让我头疼的帖子。 ODP .NET Parameter problem with uint datatype

你可以做的是设置command.BindByName = true;

  1. 迁移返回数据的 SP 时,oracle 会创建一个输出参数引用游标。在构造命令参数时需要注意这一点。

例如 OracleParameter refp = new Oracle.DataAccess.Client.OracleParameter("cv_1", OracleDbType.RefCursor, ParameterDirection.InputOutput);

command.Parameters.Add(refp);

  1. 此外,sqlserver 要求 SP 的参数以“@”为前缀,而 oracle 则不需要。这可以在您的数据层轻松处理​​。

  2. 此外,由于 Oracle 中没有位数据类型,因此 number(1) 可以正常工作。如果需要,您可能需要将布尔值转换为数字。

希望这可以帮助某人避免迁移问题。如果遇到问题,我会发布更多。

【讨论】:

    猜你喜欢
    • 2011-07-18
    • 1970-01-01
    • 2017-07-03
    • 2021-03-02
    • 1970-01-01
    • 2011-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多