PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

पोस्टग्रेज से MS SQL सर्वर में डेटाबेस का स्थानांतरण

PostgreSQL ODBC ड्राइवर द्वारा लौटाए गए मेटा डेटा को SSMS ProviderDescriptors.xml फ़ाइल द्वारा ठीक से मैप नहीं किया गया है। यह फ़ाइल मेरी SSMS स्थापना पर "C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\CommonExtensions\Microsoft\SSIS\150\ProviderDescriptors" निर्देशिका में स्थित है।

इस प्रश्न से प्राप्त जानकारी का उपयोग करना और एमएस ब्लॉग पोस्ट , मैं System.Data.Odbc.OdbcConnection के साथ PostgreSQL से सफलतापूर्वक आयात करने में सक्षम था ProviderDescriptor कॉन्फ़िगरेशन अनुभाग नीचे। मैंने MaximumLengthColumnName . को बदल दिया है , NumericPrecisionColumnName , और NumericScaleColumnName System.Data.Odbc.OdbcConnection . में विशेषता मान ColumnSchemaAttributes PosgreSQL ODBC ड्राइवर द्वारा लौटाए गए वास्तविक नामों से मिलान करने के लिए (LENGTH , और PRECISION , SCALE )।

<dtm:ProviderDescriptor SourceType="System.Data.Odbc.OdbcConnection">

    <dtm:SchemaNames
        TablesSchemaName="Tables"
        ColumnsSchemaName="Columns" 
        ViewsSchemaName="Views" 
    />

    <dtm:TableSchemaAttributes
        TableCatalogColumnName="TABLE_CAT"
        TableSchemaColumnName="TABLE_SCHEM"
        TableNameColumnName="TABLE_NAME"
        TableTypeColumnName="TABLE_TYPE"
        TableDescriptor="TABLE"
        ViewDescriptor="VIEW"
        SynonymDescriptor ="SYNONYM"
        NumberOfTableRestrictions="3"
    />

    <dtm:ColumnSchemaAttributes
        NameColumnName = "COLUMN_NAME"
        OrdinalPositionColumnName="ORDINAL_POSITION"
        DataTypeColumnName = "TYPE_NAME"
        MaximumLengthColumnName = "LENGTH"
        NumericPrecisionColumnName = "PRECISION"
        NumericScaleColumnName = "SCALE"
        NullableColumnName="NULLABLE"
        NumberOfColumnRestrictions="4"
    />

    <dtm:Literals
        PrefixQualifier="&quot;"
        SuffixQualifier="&quot;"
        CatalogSeparator="."
        SchemaSeparator="."
    />
</dtm:ProviderDescriptor>

आप मूल ProviderDescriptors.xml save को सहेजना चाह सकते हैं एक बार आपके आयात कार्य पूर्ण हो जाने के बाद फ़ाइल करें और उस पर वापस लौटें।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विंडो फ़ंक्शंस में रिंग डेटा संरचना का उपयोग कैसे करें

  2. PostgreSQL में डेटा कैसे डालें और हटाएं

  3. क्या क्लाउड SQL प्रॉक्सी को इस्तियो प्रॉक्सी से बदलना संभव है?

  4. डेटाबेस में अपडेट के बाद रेल कोड चलाएँ, बिना after_commit

  5. Postgres . में समूह कैसे करें और योग पंक्ति कैसे लौटाएं?