Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch dbFileName Excluding Merge-Ins
This is equivalent to a diff from 463bcfb351 to f6b0cf9152
2015-09-09
| ||
23:46 | Add FileName property to the SQLiteConnection class. check-in: d0d6e924bc user: mistachkin tags: trunk | |
23:34 | Bump all version numbers to 1.0.99.0. Update SQLite core library to the latest trunk code. check-in: c1fc6af85e user: mistachkin tags: trunk | |
2015-09-04
| ||
22:41 | Refactor how the DataDirectory 'macro' is handled. Closed-Leaf check-in: f6b0cf9152 user: mistachkin tags: dbFileName | |
19:59 | Add FileName property to the SQLiteConnection class. check-in: 71cc174339 user: mistachkin tags: dbFileName | |
2015-08-28
| ||
20:26 | Work in progress on exerpimental method to reset the statements associated with a SQLiteCommand. check-in: f12609cfe9 user: mistachkin tags: cmdReset | |
2015-08-25
| ||
21:16 | Remove duplicate (and incorrect for Visual Studio 2015) link from the download page. check-in: 463bcfb351 user: mistachkin tags: trunk | |
2015-08-21
| ||
19:53 | Sync up extended error codes with the SQLite core library. check-in: c6cacbbfa5 user: mistachkin tags: trunk | |
Changes to System.Data.SQLite/SQLite3.cs.
︙ | ︙ | |||
852 853 854 855 856 857 858 859 860 861 862 863 864 865 | /// <returns> /// Non-zero if the associated native connection handle is open. /// </returns> internal override bool IsOpen() { return (_sql != null) && !_sql.IsInvalid && !_sql.IsClosed; } internal override void Open(string strFilename, string vfsName, SQLiteConnectionFlags connectionFlags, SQLiteOpenFlagsEnum openFlags, int maxPoolSize, bool usePool) { // // NOTE: If the database connection is currently open, attempt to // close it now. This must be done because the file name or // other parameters that may impact the underlying database | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 | /// <returns> /// Non-zero if the associated native connection handle is open. /// </returns> internal override bool IsOpen() { return (_sql != null) && !_sql.IsInvalid && !_sql.IsClosed; } /// <summary> /// Returns the fully qualified path and file name for the currently open /// database, if any. /// </summary> /// <param name="dbName"> /// The name of the attached database to query. /// </param> /// <returns> /// The fully qualified path and file name for the currently open database, /// if any. /// </returns> internal override string GetFileName(string dbName) { if (_sql == null) return null; IntPtr pDbName = IntPtr.Zero; try { pDbName = (dbName != null) ? SQLiteString.Utf8IntPtrFromString(dbName) : IntPtr.Zero; return UTF8ToString(UnsafeNativeMethods.sqlite3_db_filename( _sql, pDbName), -1); } finally { if (pDbName != IntPtr.Zero) { SQLiteMemory.Free(pDbName); pDbName = IntPtr.Zero; } } } internal override void Open(string strFilename, string vfsName, SQLiteConnectionFlags connectionFlags, SQLiteOpenFlagsEnum openFlags, int maxPoolSize, bool usePool) { // // NOTE: If the database connection is currently open, attempt to // close it now. This must be done because the file name or // other parameters that may impact the underlying database |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteBase.cs.
︙ | ︙ | |||
88 89 90 91 92 93 94 95 96 97 98 99 100 101 | /// <summary> /// Determines if the associated native connection handle is open. /// </summary> /// <returns> /// Non-zero if a database connection is open. /// </returns> internal abstract bool IsOpen(); /// <summary> /// Opens a database. /// </summary> /// <remarks> /// Implementers should call SQLiteFunction.BindFunctions() and save the array after opening a connection /// to bind all attributed user-defined functions and collating sequences to the new connection. /// </remarks> | > > > > > > > > > > > > | 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | /// <summary> /// Determines if the associated native connection handle is open. /// </summary> /// <returns> /// Non-zero if a database connection is open. /// </returns> internal abstract bool IsOpen(); /// <summary> /// Returns the fully qualified path and file name for the currently open /// database, if any. /// </summary> /// <param name="dbName"> /// The name of the attached database to query. /// </param> /// <returns> /// The fully qualified path and file name for the currently open database, /// if any. /// </returns> internal abstract string GetFileName(string dbName); /// <summary> /// Opens a database. /// </summary> /// <remarks> /// Implementers should call SQLiteFunction.BindFunctions() and save the array after opening a connection /// to bind all attributed user-defined functions and collating sequences to the new connection. /// </remarks> |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 | { get { CheckDisposed(); return _dataSource; } } /// <summary> /// Returns the string "main". /// </summary> #if !PLATFORM_COMPACTFRAMEWORK [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] #endif | > > > > > > > > > > > > > > > > > > > > > | 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 | { get { CheckDisposed(); return _dataSource; } } /// <summary> /// Returns the fully qualified path and file name for the currently open /// database, if any. /// </summary> #if !PLATFORM_COMPACTFRAMEWORK [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] #endif public string FileName { get { CheckDisposed(); if (_sql == null) throw new InvalidOperationException( "Database connection not valid for getting file name."); return _sql.GetFileName("main"); } } /// <summary> /// Returns the string "main". /// </summary> #if !PLATFORM_COMPACTFRAMEWORK [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] #endif |
︙ | ︙ | |||
2723 2724 2725 2726 2727 2728 2729 | { if (isMemory) fileName = MemoryFileName; else { #if PLATFORM_COMPACTFRAMEWORK if (fileName.StartsWith("./") || fileName.StartsWith(".\\")) | | | 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 | { if (isMemory) fileName = MemoryFileName; else { #if PLATFORM_COMPACTFRAMEWORK if (fileName.StartsWith("./") || fileName.StartsWith(".\\")) fileName = Path.GetDirectoryName(Assembly.GetCallingAssembly().GetName().CodeBase) + fileName.Substring(1); #endif bool toFullPath = SQLiteConvert.ToBoolean(FindKey(opts, "ToFullPath", DefaultToFullPath.ToString())); fileName = ExpandFileName(fileName, toFullPath); } } try |
︙ | ︙ | |||
3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 | } // // NOTE: No match, return the input string verbatim. // return value; } /// <summary> /// Expand the filename of the data source, resolving the |DataDirectory| /// macro as appropriate. /// </summary> /// <param name="sourceFile">The database filename to expand</param> /// <param name="toFullPath"> /// Non-zero if the returned file name should be converted to a full path /// (except when using the .NET Compact Framework). /// </param> /// <returns>The expanded path and filename of the filename</returns> | > > > > > > > > > > > > > > > > > > > > > > > > | | | | | < < < < < < < < | | | | | | | | | | | | 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 | } // // NOTE: No match, return the input string verbatim. // return value; } /// <summary> /// Determines the directory to be used when dealing with the "|DataDirectory|" /// macro in a database file name. /// </summary> /// <returns> /// The directory to use in place of the "|DataDirectory|" macro -OR- null if it /// cannot be determined. /// </returns> private static string GetDataDirectory() { #if PLATFORM_COMPACTFRAMEWORK string result = Path.GetDirectoryName( Assembly.GetCallingAssembly().GetName().CodeBase); #else string result = AppDomain.CurrentDomain.GetData( "DataDirectory") as string; if (String.IsNullOrEmpty(result)) result = AppDomain.CurrentDomain.BaseDirectory; #endif return result; } /// <summary> /// Expand the filename of the data source, resolving the |DataDirectory| /// macro as appropriate. /// </summary> /// <param name="sourceFile">The database filename to expand</param> /// <param name="toFullPath"> /// Non-zero if the returned file name should be converted to a full path /// (except when using the .NET Compact Framework). /// </param> /// <returns>The expanded path and filename of the filename</returns> private static string ExpandFileName(string sourceFile, bool toFullPath) { if (String.IsNullOrEmpty(sourceFile)) return sourceFile; if (sourceFile.StartsWith(_dataDirectory, StringComparison.OrdinalIgnoreCase)) { string dataDirectory = GetDataDirectory(); if (sourceFile.Length > _dataDirectory.Length) { if (sourceFile[_dataDirectory.Length] == Path.DirectorySeparatorChar || sourceFile[_dataDirectory.Length] == Path.AltDirectorySeparatorChar) sourceFile = sourceFile.Remove(_dataDirectory.Length, 1); } sourceFile = Path.Combine(dataDirectory, sourceFile.Substring(_dataDirectory.Length)); } #if !PLATFORM_COMPACTFRAMEWORK if (toFullPath) sourceFile = Path.GetFullPath(sourceFile); #endif return sourceFile; } ///<overloads> /// The following commands are used to extract schema information out of the database. Valid schema types are: /// <list type="bullet"> /// <item> /// <description>MetaDataCollections</description> |
︙ | ︙ |
Changes to Tests/basic.eagle.
︙ | ︙ | |||
3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 | rename hashManagedArray "" rename getHashCode "" rename getMyFuncArgs "" } -constraints {eagle command.object monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite} -match regexp -result {^0 -1 0 -1 0 -1 0 -1 0 -1 0 -1 0 \{1\ 2 3 A a M m Z z\} True 1 True 1 True 1 True 1 True 1 True 1 True 1 True 1\ \{(?:-)?\d+ (?:-)?\d+\}$}} ############################################################################### reportSQLiteResources $test_channel ############################################################################### | > > > > > > > > > > > > > > > > > > > > > > > > > > > | 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 | rename hashManagedArray "" rename getHashCode "" rename getMyFuncArgs "" } -constraints {eagle command.object monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite} -match regexp -result {^0 -1 0 -1 0 -1 0 -1 0 -1 0 -1 0 \{1\ 2 3 A a M m Z z\} True 1 True 1 True 1 True 1 True 1 True 1 True 1 True 1\ \{(?:-)?\d+ (?:-)?\d+\}$}} ############################################################################### set fileName(1) [file nativename \ [file join [getDatabaseDirectory] data-1.76.db]] ############################################################################### runTest {test data-1.76 {SQLiteConnection.FileName property} -setup { setupDb [set fileName(2) data-1.76.db] } -body { set connection [getDbConnection] $connection FileName } -cleanup { freeDbConnection unset -nocomplain connection cleanupDb $fileName(2) unset -nocomplain db } -constraints {eagle command.object monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite} -result $fileName(1)} ############################################################################### unset -nocomplain fileName ############################################################################### reportSQLiteResources $test_channel ############################################################################### |
︙ | ︙ |