How to overwrite existing DB's in SQL 2008?

I use Maintenance Plan of SQL 2008 Server for Backup some DB's. As a result i need to keep, only one set of Backup Up's and not more. So actually i can use Maintenance Plan Clean Up wizard, but i need something like Overwrite. That mean
i don't want do delete DB's after i finish Backup UP, but i want to overwrite existing backups?
Thanks.

Maintenance Plans are great as a base starting point for, "maintenance".  They provide quick, easy setup and just get something in when in some cases, a fulltime DBA is not around.
Uri's recommendation on avoiding Maintenance Plans probably should have come with an explanation with such a strong statement.  I'm guessing with the following, there will be an agreement...
Maintenance Plans, like I said, offer quick development of maintenance tasks.  However, you can find yourself being restricted if you only use them for all of your maintenance tasks.  This proves to make it difficult when you start getting further
into truly managing your database servers as they grow.  Now, WITH INIT is an option form memory in the BACKUP Task but given the task, the conversion to calling the BACKUP DATABASE [db] TO DISK=N'filepath' WITH INT is a pretty quick change (at this point). 
It will allow you to better understand the tasks you are refining as well.  But, you do have the ability to leave it there.
I'm also not fully agreeing that WITH INIT is your best option if you want to retain backup history.  If you do not, then by all means, INIT it all day.  You may want to consider bringing this into SSIS or even a more structure TSQL statement to
dynamically create backup files by timestamps so you can at least retain some historic recovery abilities.  Possible this is something of a secondary backup so that is based on my assumptions
Ted Krueger
Blog on lessthandot.com @onpnt on twitter

Similar Messages

  • How to find existing DAC connection to sql server

    How to find existing DAC connection in sql server  

    Hi RoyalM,
    Vishal has answered your initial question. If you have the connection issue. I suggest you elaborate the issue in a new thread.
    You can access DAC using SQLCMD from a command prompt. Or check the existing DAC connection in a command prompt:
    1. Open Command Prompt.
    2. Type: SQLCMD –S <servername\instance> -d master and press Enter.
    1> SELECT name,local_tcp_port FROM sys.dm_exec_connections ec join sys.endpoints e on (ec.endpoint_id=e.endpoint_id) WHERE e.name='Dedicated Admin Connection'
    2> go
    3. If it returns the result, it means there is an existing DAC connection. It also shows the port used by dedicated admin connection.
    Thanks.
    Tracy Cai
    TechNet Community Support

  • How can change Case Sensitivity in MS SQL 2008

    hi expert,
    I want to change Case Sensitivity to Case Insensitivity  in MS SQL 2008.
    how can I do??
    any help please
    thanks and regards
    jun

    Hello,
    there is no way to change this. The SQL Server itself and the SAP Database are installed in an case sensitive collation. If you were albe to change this, your installation will be no longer supported and will, in the worst case, generate incorrect data within the SAP database.
    So, start live with it, there is no way to change it.
    Best regards
    Clas

  • How do I migrate views from MS SQL 2008 to Oracle 11g through SQL Developer

    Is there any way to migrate the views from MS SQL 2008 to Oracle 11g through SQL Developer? Please give me some detail steps. Thanks for your help.
    Kevin

    Hi Kevin,
    user13531850 wrote:
    Hi Turloch,
    When I use migrate to oracle, I got a problem, the migrate tool create a new schema for me in my case (AZTECA_KSMMS), it migrates all the stuffs under that schema (AZTECA_KSMMS). However my application need the all the Oracle data under schema AZTECA instead of AZTECA_KSMMS. Is there any way to specify specific schema (AZTECA) for target oracle database? Schema remapping is available:
    First Capture (separately) then during right click convert on the captured model there is a Specify the conversion options with a Object Naming tab where the schema (and other) name changes are editable.
    I have not used this recently.
    Also during the migration process, when I choose repository, there is a check box for truncate to reset repository to empty state, Do I need to check that truncate Check Box so the repository will be cleared from last migration?The repository can hold multple migration attempts. Check truncate to get rid of previous attempts information. This cleans up the repository - not the destination database.
    There are also online database and offline database options during the migration process, what are the difference between these two choices? After I migrated to Oracle, all my views has a red cross icon next to it. Does that mean the view migration is failed or not? Please give me your comments. Thanks for your help.offline: for big (amount of data) databases with simple data types,
    uses bcp + files + scripts + sqlldr.
    online: for small (amount of data) databases (easier),
    uses (Java) jdbc.
    The view is likely to be broken - recompiling it may help.
    The Oracle schema is created using a .sql file - see under generated in the directory you gave originally in the wizard. There is a .out file that contains the result of running this script including any errors. During conversion there are also likely to be warnings displayed on the UI.
    There may be a single issue that is causing multiple issues - if viewa depends on functionb, and functionb is broken, viewa will also fail.
    >
    Kevin-Turloch
    SQLDeveloper Team

  • How to overwrite existing report using RE SDK?

    Hi,
    I want to overwrite the report while saving it in  the folder and personal category.
    How can i do that?
    Please help me?
    Thanks in Advance
    Amol Mali

    Hi Amol,
    Did you want to "download" a WebI document in a specific format using the Report Engine SDK?
    Basically, you can view the WebI document in a specific format.
    Please refer to the following samples on the SDN ([https://www.sdn.sap.com/irj/boc/businessobjects-samples]):
    NET-CS2005_RENet_BE115_View_Webi-Excel: [https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b08ed111-dd66-2b10-c4b7-9e79a464c93b]
    NET-CS2005_RENet_BE115_View_Webi-Pdf: [https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/30775fd4-dd66-2b10-2dbc-98ac87baa3ad]
    These were created using XI R2 but should also work for XI 3.1.
    Also, the samples will display the document (Excel or PDF) on the browser.
    You can just modify this to save as instead.
    Hope this helps.
    Regards,
    Dan

  • How to Overwrite existing Taxonomy term and nested terms programmatically

    Hi,
    I have created Taxonomy term (Term A) and nested terms(Subterm1, Subterm2, SubTerm3, etc) programmatically.
    Now I want to update sub terms(SubTerm1, SubTerm3, SubTerm4, SubTerm5, etc) programmatically.There are more than 100 sub terms, so I want to update sub terms programmatically.
    Here is my code:
    var site = properties.Feature.Parent as SPSite;
    var taxonomySession = new TaxonomySession(site);
    if (taxonomySession.TermStores.Count != 0)
    var termStore = taxonomySession.TermStores["Managed Metadata Service"];
    var group = termStore.Groups["Group A"];
    var termSet = group.TermSets["TermSet A"];
    var TermA = termSet.CreateTerm("Term A", CultureInfo.CurrentCulture.LCID);
    TermA .CreateTerm("SubTerm1",CultureInfo.CurrentCulture.LCID);TermA.CreateTerm("SubTerm2", CultureInfo.CurrentCulture.LCID);
    TermA.CreateTerm("SubTerm3", CultureInfo.CurrentCulture.LCID);
    Can anybody let me know how to update the nested terms?
    Any help would be appreciated.
    Thank you,
    AA.

    Hi,
    The following code for your reference:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.Taxonomy;
    namespace ConsoleApplication
    class Program
    static void Main(string[] args)
    using (SPSite site = new SPSite("http://sp:5000/"))
    TaxonomySession taxonomySession = new TaxonomySession(site);
    TermStore termStore=taxonomySession.TermStores["Managed Metadata Service"];
    var group=termStore.Groups["Group A"];
    var termSet=group.TermSets["TermSet A"];
    var topTerm = termSet.Terms["Term A"];
    var subTerms = topTerm.Terms;
    foreach (Term term in subTerms)
    if (term.Name.Equals("SubTerm1"))
    term.Name = "SubTerm-1";
    if (term.Name.Equals("SubTerm2"))
    term.Name = "SubTerm-2";
    if (term.Name.Equals("SubTerm3"))
    term.Name = "SubTerm-3";
    termStore.CommitAll();
    Thanks,
    Dennis Guo
    TechNet Community Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Dennis Guo
    TechNet Community Support

  • How does one overwrite existing text?

    One can do plenty of clever formatting in drafting Thunderbird correspondence. But I am unable to find how one overwrites existing text. Can someone help, please?

    please I am having trouble understanding. But here goes what I think your asking.
    When you reply in an interleaved fashion as you did with my email, you need to break the previous message by pressing enter to get your own text area to type in. I saw a discussion on one of the develop0er list the other day where they were suggesting that some of the font information is bleeding back and forth in these situation and brainstorming what to actually do about it. That is just a discussion as yet. See https://groups.google.com/forum/#!topic/tb-planning/ZYusepcRj-k
    One of the best option in my opinion is to use the quote and compose managerhttps://freeshell.de/~kaosmos/quoteandcomposemanager-en.html as it preserves the vertical lines Thunderbird shows while editing in the outgoing message to make it clear where the interleaved information is located. It also has a stabilize font option that has helped many. (The author is Italian, so Italian locales of his add-ons are always available)
    Instruction on installing add-ons here http://chrisramsden.vfast.co.uk/3_How_to_install_Add-ons_in_Thunderbird.html

  • How do you configure AME CS5.5 to overwrite existing output files?

    How do you configure AME CS5.5 to overwrite existing output files?  So far the only options I have found are to increment the output file name or fail.  From the explaination of file increment I would have expected overwrite to be the alternative.  We work daily with the same file(s) on an hourly basis and convert via watch folder to over a dozen file types and network mapped destinations.  Re-using the same file name is critical to the final project (updating website content). Does anyone have any suggestions?

    Has there been any updates on overwriting output files in CS6? This would be extremely helpful.

  • HOW RESTORE WITHOUT OVERWRITE EXISTING DATABASE ???????

    I create a test database named TESTONE
    USE MASTER
    GO
    if DB_ID('testone') IS NOT null
    drop database TESTONE
    GO
    CREATE DATABASE TESTONE
    GO
    and change recovery model to simple
    alter database TESTONE set recovery simple
    GO
    so I create a sample table
    use TESTONE
    GO
    create table table1(
    id int identity primary key,
    descr varchar(10)
    go
    I take a full backup of that database
    USE master
    GO
    BACKUP DATABASE TESTONE
    TO DISK=N'c:\TEMP\testone.bak'
    WITH NOFORMAT, INIT, NAME = N'TESTONE', SKIP, NOREWIND, NOUNLOAD, STATS = 10
    GO
    after that i do something bad :-)
    USE TESTONE
    GO
    drop table table1
    go
    USE master
    GO
    USE [master]
    RESTORE DATABASE [TESTONE] FROM DISK = N'C:\TEMP\testone.bak' WITH RECOVERY, FILE = 1, NOUNLOAD, STATS = 5
    GO
    the restore command doesn't contains  WITH REPLACE clause and ....
    if you expand the tables tree you'll find your deleted table
    the database has been overwritten
    Why?

    That is the default behavior or RESTORE. Since you are restoring the same DB (not a different DB) and the DB is in simple recovery mode, it will overwrite the existing DB. See https://msdn.microsoft.com/en-us/library/ms186858.aspx.
    Here is an excerpt from this link:
    REPLACE Option Impact
    REPLACE should be used rarely and only after careful consideration. Restore normally prevents accidentally overwriting a database with a different database. If the database specified in a RESTORE statement already exists on the current server and the specified
    database family GUID differs from the database family GUID recorded in the backup set, the database is not restored. This is an important safeguard.
    The REPLACE option overrides several important safety checks that restore normally performs. The overridden checks are as follows:
    Restoring over an existing database with a backup taken of another database.
    With the REPLACE option, restore allows you to overwrite an existing database with whatever database is in the backup set, even if the specified database name differs from the database name recorded in the backup set. This can result in accidentally overwriting
    a database by a different database.
    Restoring over a database using the full or bulk-logged recovery model where a tail-log backup has not been taken and the STOPAT option is not used.
    With the REPLACE option, you can lose committed work, because the log written most recently has not been backed up.
    Overwriting existing files.
    For example, a mistake could allow overwriting files of the wrong type, such as .xls files, or that are being used by another database that is not online. Arbitrary data loss is possible if existing files are overwritten, although the restored database is complete.
    Satish Kartan www.sqlfood.com

  • How to pass a structure in PL/SQL external proc.

    This is for educational purpose only. I am trying to implement kernel32.dll and shell32.dll in PL/SQL using external proc. Everything is working fine, except When there is a structure in OUT parameter.
    My database version.
    SQL> SELECT * FROM v$version;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
    PL/SQL Release 10.2.0.3.0 - Production
    CORE    10.2.0.3.0      Production
    TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
    NLSRTL Version 10.2.0.3.0 - ProductionI have set up the listner.ora and tnsnames.ora and written a package called dbms_kernel32sb.
    There are 9 program units.
    1. CreateFile -- working fine
    2. CloseFile -- working fine
    3. GetSize -- working fine
    4. FindFirstFile -- NOT working, because one OUT parameter has the structure type WIN32_FIND_DATA.
    5. GetFileTime -- NOT working, because one OUT parameter has the structure type FILETIME
    6. GetDiskFreeSpace -- working fine
    7. GetDriveType -- working fine.
    8. GetLastError -- working fine
    9. ExecuteCommand -- working fine.
    Here is the package specification:
    CREATE OR REPLACE PACKAGE dbms_kernel32sb AS
        Name: dbms_kernel32sb.pks
        Author: Saubhik Banerjee
        Date: 24th Jan 2011
        Version: 1.0
        Comment: This package is to implement some functionality from kernel32.dll.
                 Usng extproc
    OPEN_EXISTING_FILE CONSTANT PLS_INTEGER :=3;
    FILE_ATTRIBUTE_NORMAL CONSTANT PLS_INTEGER :=128;
    DISABLE_FILE_SHARE_MODE CONSTANT PLS_INTEGER :=0;
    NO_FILE_SECURITY_ATTRIBUTE CONSTANT PLS_INTEGER :=0;
    NO_TEMPLATE_FILE CONSTANT PLS_INTEGER :=0;
    GENERIC_FILE_ACCESS CONSTANT PLS_INTEGER :=0;
    FILE_SIZE_HIGH CONSTANT PLS_INTEGER :=400000000;
    EXECUTE_FILE CONSTANT VARCHAR2(4):='open';
    PRINT_FILE CONSTANT VARCHAR2(5):='print';
    NO_PARAMATER CONSTANT VARCHAR2(2):=' ';
    FUNCTION CreateFile(pi_FileName VARCHAR2 --1, File name
                ,pi_DesiredAccess BINARY_INTEGER --2, Type of access required (read/write ect)
                ,pi_ShareMode BINARY_INTEGER --3,  share mode
                ,pi_SecurityAttributes BINARY_INTEGER --4, securoty attribute
                ,pi_CreationDisposition BINARY_INTEGER --5, open existing, create new etc
                ,pi_FlagsAndAttributes BINARY_INTEGER --6, File attribute- normal
                ,pi_TemplateFile BINARY_INTEGER) --Not required.
        Return BINARY_INTEGER;
    FUNCTION CloseFile (pi_FileHandle BINARY_INTEGER)
                         Return BINARY_INTEGER;
    FUNCTION GetSize (pi_FileHandle BINARY_INTEGER,
                       pio_FileSizeHigh IN OUT BINARY_INTEGER)
                   RETURN BINARY_INTEGER;
    FUNCTION FindFirstFile ( pi_FileName VARCHAR2
                             ,pio_Win32_Find_data OUT 
                                 WIN32_FIND_DATA
    RETURN BINARY_INTEGER;                                             
    FUNCTION GetFileTime ( pi_FileHandle BINARY_INTEGER
                           ,pio_FileCreationTime IN OUT FILETIME
                           ,pio_LastAccessTime   IN OUT FILETIME
                           ,pio_LastWriteTime    IN OUT FILETIME
    RETURN BINARY_INTEGER;
    FUNCTION GetDiskFreeSpace ( pi_RootPathName VARCHAR2
                                ,pio_SectorsPerCluster  OUT BINARY_INTEGER
                                ,pio_BytesPerSector   OUT BINARY_INTEGER
                                ,pio_NumberOfFreeClusters  OUT BINARY_INTEGER
                                ,pio_TotalNumberOfClusters  OUT BINARY_INTEGER
    RETURN BINARY_INTEGER;    
    FUNCTION GetDriveType( pi_driveLetter VARCHAR2) RETURN VARCHAR2;
    FUNCTION GetLastError RETURN BINARY_INTEGER;   
    FUNCTION ExecuteCommand ( pi_OperationType VARCHAR2
                              ,pi_FileName VARCHAR2
                              ,pi_Parameters VARCHAR2
                              ,pi_DefaultDirectory VARCHAR2
    RETURN VARCHAR2;
    END dbms_kernel32sb;
    Here is the package body:
    CREATE OR REPLACE PACKAGE BODY dbms_kernel32sb AS
    /* Name: dbms_kernel32sb.pkb
        Author: Saubhik Banerjee
        Date: 24th Jan 2011
        Version: 1.0
        Comment: This package is to implement some functionality from kernel32.dll.
                 Usng extproc
      FUNCTION
      CreateFile( pi_FileName VARCHAR2 --1
                , pi_DesiredAccess BINARY_INTEGER --2
                , pi_ShareMode BINARY_INTEGER --3
                , pi_SecurityAttributes BINARY_INTEGER --4
                , pi_CreationDisposition BINARY_INTEGER --5
                , pi_FlagsAndAttributes BINARY_INTEGER --6
                , pi_TemplateFile BINARY_INTEGER) --7
        Return BINARY_INTEGER IS EXTERNAL LIBRARY kernel32 Name "CreateFileA"
        PARAMETERS(  pi_FileName STRING
                   , pi_DesiredAccess long
                   , pi_ShareMode long
                   , pi_SecurityAttributes long
                   , pi_CreationDisposition long
                   , pi_FlagsAndAttributes long
                   , pi_TemplateFile long
                   , return long);
    FUNCTION CloseFile (pi_FileHandle BINARY_INTEGER)
                         Return BINARY_INTEGER
         IS EXTERNAL
         LIBRARY kernel32 Name "CloseHandle"
         PARAMETERS (pi_FileHandle long, return long);
    FUNCTION GetSize (pi_FileHandle BINARY_INTEGER,
                       pio_FileSizeHigh IN OUT BINARY_INTEGER)
                   RETURN BINARY_INTEGER
         IS EXTERNAL
        LIBRARY kernel32 NAME "GetFileSize"
        PARAMETERS (pi_FileHandle long, pio_FileSizeHigh long, return long );
      FUNCTION GetFileTime ( pi_FileHandle BINARY_INTEGER
                           ,pio_FileCreationTime IN OUT FILETIME
                           ,pio_LastAccessTime   IN OUT FILETIME
                           ,pio_LastWriteTime    IN OUT FILETIME
       RETURN BINARY_INTEGER
         IS EXTERNAL
        LIBRARY kernel32 NAME "GetFileTime"
        WITH CONTEXT
        PARAMETERS ( CONTEXT,
                      pi_FileHandle long
                    , pio_FileCreationTime  OCIColl
                    , pio_FileCreationTime INDICATOR SHORT
                    , pio_LastAccessTime  OCIColl
                   , pio_LastAccessTime INDICATOR SHORT
                    , pio_LastWriteTime OCIColl
                    , pio_LastWriteTime INDICATOR SHORT
                    , return long );                  
    FUNCTION FindFirstFile ( pi_FileName VARCHAR2
                             ,pio_Win32_Find_data OUT 
                                 WIN32_FIND_DATA
    RETURN BINARY_INTEGER
    IS EXTERNAL
        LIBRARY kernel32 NAME "FindFirstFileA"
        --WITH CONTEXT
        PARAMETERS
                    ( --CONTEXT,
                     pi_FileName STRING--, pi_FileName INDICATOR SHORT
                    , pio_Win32_Find_data  BY REFERENCE OCIColl--,pio_Win32_Find_data INDICATOR long
                    , return long );
    FUNCTION GetDiskFreeSpace ( pi_RootPathName VARCHAR2
                                ,pio_SectorsPerCluster  OUT BINARY_INTEGER
                                ,pio_BytesPerSector   OUT BINARY_INTEGER
                                ,pio_NumberOfFreeClusters  OUT BINARY_INTEGER
                                ,pio_TotalNumberOfClusters  OUT BINARY_INTEGER
    RETURN BINARY_INTEGER
      IS EXTERNAL
        LIBRARY kernel32 NAME "GetDiskFreeSpaceA"
        PARAMETERS (  pi_RootPathName STRING
                    , pio_SectorsPerCluster BY REFERENCE long
                    , pio_BytesPerSector BY REFERENCE long
                    , pio_NumberOfFreeClusters BY REFERENCE long
                    , pio_TotalNumberOfClusters BY REFERENCE long
                    , return long );   
      FUNCTION GetDriveTypeA( pi_driveLetter VARCHAR2) RETURN BINARY_INTEGER   
      IS EXTERNAL
      LIBRARY kernel32 NAME "GetDriveTypeA"
      PARAMETERS (pi_driveLetter STRING, RETURN long);
    FUNCTION GetDriveType( pi_driveLetter VARCHAR2) RETURN VARCHAR2 IS
    BEGIN
      CASE  GetDriveTypeA(pi_driveLetter) 
       WHEN 2 THEN RETURN 'Removable';
       WHEN 3 THEN RETURN 'Drive Fixed';
       WHEN 4 THEN RETURN 'Remote';
       WHEN 5 THEN RETURN 'Cd-Rom';
       WHEN 6 THEN RETURN 'Ram disk';
       ELSE RETURN 'Unrecognized';
    END CASE;                              
    END;
    FUNCTION GetLastError  RETURN BINARY_INTEGER
    IS EXTERNAL
    LIBRARY kernel32 NAME "GetLastError"
    PARAMETERS (return long);
    FUNCTION ShellExecute( pi_Hwnd BINARY_INTEGER
                          ,pi_Operation VARCHAR2
                          ,pi_FileName VARCHAR2
                          ,pi_Parameters VARCHAR2
                          ,pi_DefaultDirectory  VARCHAR2
                          ,pi_ShowCmd BINARY_INTEGER
                          ) RETURN BINARY_INTEGER
    IS EXTERNAL
    LIBRARY SHELL32 NAME "ShellExecuteA"
    PARAMETERS (pi_Hwnd long,pi_Operation STRING,pi_FileName STRING
                 ,pi_Parameters STRING,pi_DefaultDirectory STRING
                 ,pi_ShowCmd long, return long
    FUNCTION ExecuteCommand ( pi_OperationType VARCHAR2
                              ,pi_FileName VARCHAR2
                              ,pi_Parameters VARCHAR2
                              ,pi_DefaultDirectory VARCHAR2
    RETURN VARCHAR2 IS
      v_return_val BINARY_INTEGER;
    BEGIN
      v_return_val:= ShellExecute(0,pi_OperationType
                                 ,pi_FileName,pi_Parameters
                                 ,pi_DefaultDirectory,0
      IF v_return_val <=32 THEN
       RETURN 'Error!';
      ELSE RETURN 'Success!';
      END IF;
    END;
    END dbms_kernel32sb;
    Now the working demos:
    SQL> SET SERVEROUT ON
    SQL> /* Demo I:- How to obtain file size */
    SQL> DECLARE
      2    v_FileSize BINARY_INTEGER;
      3    v_FileSizeHigh PLS_INTEGER;
      4    v_FileHandle BINARY_INTEGER;
      5    v_filename VARCHAR2(500) :='C:\test2.csv';
      6    v_dummy BINARY_INTEGER;
      7  BEGIN
      8    v_FileSizeHigh := DBMS_KERNEL32SB.FILE_SIZE_HIGH;
      9    v_FileHandle:=DBMS_KERNEL32SB.CreateFile(v_filename -- File name
    10                            ,DBMS_KERNEL32SB.GENERIC_FILE_ACCESS
    11                            ,DBMS_KERNEL32SB.DISABLE_FILE_SHARE_MODE
    12                            ,DBMS_KERNEL32SB.NO_FILE_SECURITY_ATTRIBUT
    13                            ,DBMS_KERNEL32SB.OPEN_EXISTING_FILE
    14                            ,DBMS_KERNEL32SB.FILE_ATTRIBUTE_NORMAL
    15                            ,DBMS_KERNEL32SB.NO_TEMPLATE_FILE);
    16   v_FileSize := DBMS_KERNEL32SB.Getsize(v_FileHandle, v_FileSizeHigh)
    17   DBMS_OUTPUT.put_line('File Size in Bytes: ' ||v_FileSize);
    18   v_dummy:=DBMS_KERNEL32SB.CloseFile(v_FileHandle);
    19  END;
    20  /
    File Size in Bytes: 61
    PL/SQL procedure successfully completed.
    SQL>
    SQL> /* Demo II:- How to find free disk space  */
    SQL> DECLARE
      2    v_rootpath VARCHAR2(500) :='C:\';
      3    v_dummy BINARY_INTEGER;
      4    v_sectorspercluster BINARY_INTEGER;
      5    v_bytespersector BINARY_INTEGER;
      6    v_numberoffreeclusters BINARY_INTEGER;
      7    v_totalnumberofclusters BINARY_INTEGER;
      8    v_freespace NUMBER;
      9    v_totalspace NUMBER;
    10  BEGIN
    11    v_dummy:=DBMS_KERNEL32SB.GetDiskFreeSpace(v_rootpath
    12                                              ,v_sectorspercluster
    13                                              ,v_bytespersector
    14                                              ,v_numberoffreeclusters
    15                                              ,v_totalnumberofclusters
    16                                              );
    17                                              
    18    DBMS_OUTPUT.put_line('Sector pre Cluster: ' ||v_sectorspercluster);
    19    DBMS_OUTPUT.put_line('Bytes per sector: ' ||v_bytespersector);
    20    DBMS_OUTPUT.put_line('Number Of Free Clusters: ' ||v_numberoffreeclusters);
    21    DBMS_OUTPUT.put_line('Total Number Of Clusters: ' ||v_totalnumberofclusters);
    22    v_freespace:=v_numberoffreeclusters/1024/1024/1024;
    23    v_freespace:=ROUND(v_freespace*v_sectorspercluster*v_bytespersector,3);
    24    v_totalspace:=v_totalnumberofclusters/1024/1024/1024;
    25    v_totalspace:=ROUND(v_totalspace*v_sectorspercluster*v_bytespersector,3);
    26    DBMS_OUTPUT.put_line('Total Space (GB):' ||v_totalspace);
    27    DBMS_OUTPUT.put_line('Total number of Free space (GB): '||v_freespace );
    28  END;
    29  /
    Sector pre Cluster: 8
    Bytes per sector: 512
    Number Of Free Clusters: 739477
    Total Number Of Clusters: 9765622
    Total Space (GB):37.253
    Total number of Free space (GB): 2.821
    PL/SQL procedure successfully completed.
    SQL>
    SQL> /* Demo IV:- How to get drive type*/
    SQL> SELECT dbms_kernel32sb.GetDriveType('C:\') FROM dual;
    DBMS_KERNEL32SB.GETDRIVETYPE('C:\')
    Drive Fixed
    SQL> SELECT dbms_kernel32sb.GetDriveType('D:\') FROM dual;
    DBMS_KERNEL32SB.GETDRIVETYPE('D:\')
    Cd-Rom
    SQL> SELECT dbms_kernel32sb.GetDriveType('E:\') FROM dual;
    DBMS_KERNEL32SB.GETDRIVETYPE('E:\')
    Unrecognized
    SQL>
    SQL> /* Demo V:- How to execute an Operating System Command*/
    SQL> DECLARE
      2   v_FileToExecute VARCHAR2(20):='test.bat';
      3   v_Parameter VARCHAR2(20):='test1.csv';--dbms_kernel32sb.NO_PARAMATER
      4   v_DefaultDirectory VARCHAR2(20):='C:\';
      5   v_ReturnValue VARCHAR2(20);
      6  BEGIN
      7    v_ReturnValue:=dbms_kernel32sb.ExecuteCommand(dbms_kernel32sb.EXECUTE_FILE
      8                                                  ,v_FileToExecute
      9                                                  ,v_Parameter
    10                                                  ,v_DefaultDirectory
    11                                                  );
    12   DBMS_OUTPUT.put_line('Status: '||v_ReturnValue);                               
    13  END;
    14  /
    Status: Success!
    PL/SQL procedure successfully completed.
    SQL> Now the sub programs with structures are NOT getting called successfully.
    SQL> /* Demo III:- How to obtain file time */
    SQL> DECLARE
      2    v_FileHandle BINARY_INTEGER;
      3    v_filename VARCHAR2(500) :='C:\test2.csv';
      4    v_dummy BINARY_INTEGER;
      5    v_filecreationtime FILETIME;
      6    v_lastaccesstime FILETIME;
      7    v_lastwritetime FILETIME;
      8    v_err BINARY_INTEGER;
      9  BEGIN
    10    v_FileHandle:=DBMS_KERNEL32SB.CreateFile(v_filename -- File name
    11                            ,DBMS_KERNEL32SB.GENERIC_FILE_ACCESS
    12                            ,DBMS_KERNEL32SB.DISABLE_FILE_SHARE_MODE
    13                            ,DBMS_KERNEL32SB.NO_FILE_SECURITY_ATTRIBUTE
    14                            ,DBMS_KERNEL32SB.OPEN_EXISTING_FILE
    15                            ,DBMS_KERNEL32SB.FILE_ATTRIBUTE_NORMAL
    16                            ,DBMS_KERNEL32SB.NO_TEMPLATE_FILE);
    17   v_dummy := DBMS_KERNEL32SB.GetFileTime( v_FileHandle
    18                                          ,v_filecreationtime
    19                                          ,v_lastaccesstime
    20                                          ,v_lastwritetime
    21                                          );
    22   v_err:=DBMS_KERNEL32SB.GetLastError;                                
    23   DBMS_OUTPUT.put_line('File Size in Bytes: ' ||v_dummy);
    24   DBMS_OUTPUT.put_line('Error:'||v_err);
    25   v_dummy:=DBMS_KERNEL32SB.CloseFile(v_FileHandle);
    26  END;
    27  /
    File Size in Bytes: 0
    Error:203
    PL/SQL procedure successfully completed.
    SQL> So, I have noticed that, Where ever a STRUCTURE is involved in external routine, there is a problem. I want to know, How to implement functions with STRUCTURE as OUT parameter.
    Forgot to mention: This is my FILETIME object which corresponds to FILETIME structure of win32.
    CREATE OR REPLACE TYPE FILETIME_rec IS OBJECT
                              ( LowDateTime NUMBER
                               ,HighDateTime NUMBER
    CREATE OR REPLACE TYPE FILETIME IS TABLE OF  FILETIME_rec;Edited by: Saubhik on Feb 1, 2011 4:15 PM

    Saubhik wrote:
    This is for educational purpose only. I am trying to implement kernel32.dll and shell32.dll in PL/SQL using external proc. Interesting. Familiar with the Wn32 API, but do not run Oracle on Windows and never looked at this aspect of integration.
    So, I have noticed that, Where ever a STRUCTURE is involved in external routine, there is a problem. I want to know, How to implement functions with STRUCTURE as OUT parameter.
    Forgot to mention: This is my FILETIME object which corresponds to FILETIME structure of win32.The problem is that this passes the parameter by reference and not value. In a vanilla C/C++/Delphi program, you will create a variable of that struct and then pass a long pointer to that variable when making the API call. That pointer will be dereferenced and the memory it points to, populated. This is not a problem as the underlying DLL you call that does this, uses your process's data segment.
    Extproc is different. In order to protect the integrity of the database server process, an external call is done by a "proxy" process. It acts as the interface between your PL/SQL code and the actual external call.
    In this case, this "proxy" process will be doing the implicit LoadLibrary() call to load kernel32.dll interface - and the DLL will expect to dereference and access this process's memory struct to populate it. This "proxy" process in turn needs to know that despite it calling the interface by reference, it needs to return that parameter to PL/SQL by value - as your PL/SQL code cannot dereference a pointer passed back by that "proxy" process and access its memory to gain access to that struct.
    In basic terms - that argument is a 32 bit number containing a pointer. That is what the "proxy" process needs to pass to the interface call. Your code is passing a struct and not a pointer, right?
    And that is the basic problem I believe. How to address this.. not sure. You can have your own DLL as interface that does not use pointers but expect arguments to be passed by value. But this will suck as you then need to include a custom DLL to deploy and have PL/SQL call that, instead of simply accessing and calling the native kernel interface.
    Doubt that many Win32 programmers with OCI (Oracle Call Interface) frequents this forum. So perhaps this is not the best place to ask. I would be hitting Metalink (support.oracle.com) search function in your sho3s though as there should be support notes dealing with this subject matter.

  • How do I create a view in SQL Server in Visual Studio Express 2013 for Desktop?

    Hi
    I've got a SQL Server database set up using the internal SQL Server in Visual Studio Express 2013 for Desktop. I want to create a view (using tables with one to many relationships) but I don't
    know how to do it.
    Where can I find a good tutorial on creating views in SQL Server in Visual Studio Express 2013 for Desktop? I think Visual Studio Express 2013 for Desktop doesn't have some view designer that
    exists in the non-express version of Visual Studio (if I'm not mistaken). So I think I'd need a tutorial on how to do the actual SQL, unless there is some tool I don't know about.
    Thanks

    Hi ,
    According to your description, if you install SQL Server SQL Server 2014 Express and SQL Server Manager Studio tools (SSMS), if you want to create a view, you can use SSMS. Then if you want to connect to and Diagram your SQL Express Database in Visual Studio
    2013, you can attach the database file by using the .NET Framework Data Provider for SQL Server in Visual Studio, and create a database diagram via expanding the “Database Diagrams” node.
     For more information, there is similar issue about how to connect to and Diagram your SQL Express Database in Visual Studio 2012 , you can review the following article,
    http://blogs.msdn.com/b/bethmassi/archive/2011/10/27/how-to-connect-to-and-diagram-your-sql-express-database-in-visual-studio-lightswitch.aspx.
    Regards,
    Sofiya Li
    Sofiya Li
    TechNet Community Support

  • How to resolve ORA-00001 Error in SQL Insert?

    Hi all, I need your appreciated help.
    I make a plsql procedure that is inserting a row according cursor value, I'm having oracle error ORA-00001: unique constraint (constraint_name) violated.
    You may see this message if a duplicate entry exists at a different level: in RDBMS MySQL I have the syntax IGNORE to resolve this duplication error... and in Oracle ?
    Thanks for your time and hints.
    Miguelito

    user6317803 wrote:
    How to resolve ORA-00001 Error in SQL Insert?ORA-00001 means table has unique/primary key/index and you are trying to insert a row with key value that already exists in the table. I'll assume table COUNTRIES has primary key on COUNTRY_ID. Then change SQL to:
    SQL = "INSERT INTO COUNTRIES(COUNTRY_ID,COUNTRY_NAME,REGION_ID) SELECT 'BZ','BLZ',3 FROM DUAL WHERE NOT EXISTS(SELECT 1 FROM COUNTRIES WHERE COUNTRY_ID = 'BZ')"There is a good chance table COUNTRIES also has unique key/index on COUNTRY_NAME. If so use:
    SQL = "INSERT INTO COUNTRIES(COUNTRY_ID,COUNTRY_NAME,REGION_ID) SELECT 'BZ','BLZ',3 FROM DUAL WHERE NOT EXISTS(SELECT 1 FROM COUNTRIES WHERE COUNTRY_ID = 'BZ' OR COUNTRY_NAME = 'BLZ')"SY.

  • How to delete HFM Application Tables in SQL

    Hi Gurus
    1.How to delete HFM Application Tables in SQL?
    Manually its deleting but each application having 120-150 tables? how to do this in a single shot?
    I have deleted few applications using workspace/ shared services, but still its showing under HFM server under SQL Tables.
    Please help me
    regards
    Smilee

    Hi Smilee,
    1. If the application can be opened in Financial Management web interface, go to the Manage Taskflows module and make sure that no taskflows still exist for this application. Delete any existing taskflows.
    2. If the application exists in Shared Services, right click on the application in Shared Services and try to delete the application from there
    3. Stop Hyperion Shared Services and all Financial Management Windows processes and take backups of the relational database schemas of both.
    4. Check the relational database repository of Hyperion Shared Services, in the table "ces_apps" and make sure that there are no more rows containing the appname "EXAMPLE". If row still exists you should seek help from Oracle Global Software Support to clean up the Hyperion Shared Services before proceeding.
    5. It is possible to remove all content for a deleted application from the Financial Management relational database. Extreme care should be taken when manually manipulating database tables as permanent damage can be done to the intended application and other applications if the wrong content is deleted.
    a) Begin by deleting all tables, indexes, sequences and package objects that begin with the application name
    b) Delete any tables beginning HSV_appname_xxxxxx
    c) Delete any rows from the HSX_CLUSTER_xxxxx tables referring to the application.
    d) Delete any rows from the HSV_ACTIVITY_KILL_USERS, HSV_ACTIVITY_NO_ACCESS, HSV_ACTIVITY_SESSIONS and HSV_ACTIVITY_USERS and HSV_USERS_ON_SYSTEM that refer to the application name.
    d) Delete the row containing name of the application from the HSX_DATASOURCES table.
    6. The next time all the Hyperion services are started again, the application should be safely removed from Windows client.
    You can contact your DBA to write a query on how to delete it.
    Hope this helps,
    Thank you,
    Charles Babu J

  • Why not allow Business Rule Design Transformer to overwrite existing BRDDs

    Hi,
    It can be quite annoying during development to continually having to remove the BRDD Trigger and PL/SQL Definition when running the BR Design Transformer reveals missing information in the BR Analysis definition. It seems that it would be practical to have at least the option to have the Business Rule Design Transformer overwrite an existing Business Rule Design Definition.
    You could think of an additional parameter in this utilily labeled "Overwrite existing BRDD?" with allowable values Y(es) and N(o) with No as default (so that the default functionality is the same as before).
    Below you find the code that can be added to the HSU_BRTR package to realize such a functional improvement. Maybe you can consider it for a next release...?!
    best regards,
    Lucas Jellema
    AMIS Services BV
    code to add to HSU_BRTR to provide a parameter that allows the user to specify whether or not the HSU_BRTR is allowed to overwrite an existing BRDD:
    in the revision history:
    09-jan-2003 Lucas Jellema
    6.5.2.3AMIS1.1 Added new parameter and supporting code that allows user to indicate
    whether existing Business Rule Design Definitions may be/should be overwritten
    at the end of procedure install
    hsu_install.add_parameter
    ( PACKAGE_NAME -- package name
    , 40 -- sequence
    , 'Overwrite existing BRDDs?' -- prompt
    , 'N' -- default value actual
    , 'No' -- default value displayed
    , 'Y' -- mandatory
    , 'N' -- allow multi-select
    , 'N' -- include shared elements
    , '' -- element type short name
    , '' -- sql expression actual
    , '' -- sql expression displayed
    , null -- where clause
    , null -- synchronize with
    , null -- foreign key column
    , -- help text
    'Choose whether you want this utility to overwrite existing Business Rule Design Definitions.'
    hsu_install.add_allowable_value
    ( PACKAGE_NAME -- package name
    , 40 -- parameter
    , 1 -- sequence
    , 'Y' -- actual value
    , 'Yes' -- displayed value
    hsu_install.add_allowable_value
    ( PACKAGE_NAME -- package name
    , 40 -- parameter
    , 2 -- sequence
    , 'N' -- actual value
    , 'No' -- displayed value
    --------6.5.2.3AMIS1.1
    Just before procedure transform_stage2
    procedure delete_brdds
    ( p_tbl_id in ci_table_definitions.id%type
    , p_br_name in varchar2
    -- Purpose Delete existing Business Rule Design Definition
    -- Usage from run procedure
    -- Remarks Find PL/SQl Module Definition based on Business Rule Label
    is
    cursor c_brdd
    ( b_tbl_id in ci_table_definitions.id%type
    , b_br_name in varchar2
    is
    select trg.id trg_id
    , trg.name name
    , plm.id plm_id
    from ci_database_triggers trg
    , ci_plsql_modules plm
    where trg.table_definition_reference = b_tbl_id
    and trg.plsql_module_reference = plm.id
    and plm.name = b_br_name
    begin
    -- loop over journalling busrules of this application
    <<brdd>>
    for r_brdd in c_brdd(p_tbl_id, p_br_name) loop
    -- delete busrule (delete of trigger is since 6i not enough anymore, so
    -- explicitly delete PL/SQL module also)
    bllog.write
    ( 'Deleting trigger '||r_brdd.name||' and PL/SQL module '
    ||hsu_name.get_name_and_path(r_brdd.plm_id)
    ||', a new business rule design definition overwrites this old one.'
    , bllog.information
    bltrg.del(r_brdd.trg_id);
    blplm.del(r_brdd.plm_id);
    end loop brdd;
    end delete_brdds;
    inside procedure transform_stage2
    (just before the comment: -- check if BRDD with this plm_name already exists)
    if p_overwrite_br = 'Y'
         then
    delete_brdds
    ( p_tbl_id => g_trg_tbl(i).tbl_id
    , p_br_name => l_plm_name
         end if; -- find_trg and overwrite =Y
    A new parameter in procedure transform_br_fun
    procedure transform_br_fun
    , p_overwrite_br in varchar2 default 'N' -- 6.5.2.3AMIS1.1
    use the parameter p_overwrite_br in the call to transform_stage2
    transform_stage2
    ( p_fun_id => p_fun_id
    , p_fun_label => r_fun.fun_function_label
    , p_fun_short_definition => r_fun.fun_short_definition
    , p_msg_prefix => p_msg_prefix
    , p_msg_language => p_msg_language
    , p_rule_type => l_rule_type
                   , p_overwrite_br => p_overwrite_br -- 6.5.2.3AMIS1.1
    new parameter p_overwrite_br in the procedure run
    NOTE: in both PACKAGE SPECIFICATION and BODY
    , p_overwrite_br in varchar2 default'N' -- 6.5.2.3AMIS1.1
    use the parameter p_overwrite_br in all calls to transform_br_fun inside procedure run
    transform_br_fun
    ( p_fun_id => r_fun_tree.id
    , p_msg_prefix => p_msg_prefix
    , p_msg_language => p_msg_language
    , p_create_att_usages => p_create_att_usages
    , p_overwrite_br => p_overwrite_br -- 6.5.2.3AMIS1.1

    Among the alternatives not mentioned... Using a TiVo DVR, rather than the X1; a Roamio Plus or Pro would solve both the concern over the quality of the DVR, as well as providing the MoCA bridge capability the poster so desperately wanted the X1 DVR to provide. (Although the TiVo's support only MoCA 1.1.) Just get a third-party MoCA adapter for the distant location. Why the hang-up on having a device provided by Comcast? This seems especially ironic given the opinions expressed regarding payments over time to Comcast. If a MoCA 2.0 bridge was the requirement, they don't exist outside providers. So couldn't the poster have simply requested a replacement XB3 from the local office and configured it down to only providing MoCA bridging -- and perhaps as a wireless access point? Comcast would bill him the monthly rate for the extra device, but such is the state of MoCA 2.0. Much of the OP sounds like frustration over devices providing capabilities the poster *thinks* they should have.

  • How to add a new instance to a 2 node SQL 2008 R2 Cluster under the same networkname

    Hello All,
    I'm fairly new to sql and have just deployed a new 2 node SQL 2008 R2 cluster.
    During installation, I created a networkname SQLCLU and a named instance I01.
    I now would like to add another Instance (I02) under the same networkname.
    What is the proper procedure to do this?
    I don't believe that I should do this using the action: "New SQL Server failover cluster" from the setup menu, but rather using the action "New Installation or add features to an existing installation"
    With the second option, I'm however not sure how I should make this instance clustered..
    Should I also execute the "New Installation or add features to an existing installation" action on the 2nd node in the cluster?
    Many thanks for your  advice!
    Filip

    You cannot use the same network name for 2 instances. You need to use a different network name for the second instance I02
    A failover cluster instance contains:
    A combination of one or more disks in a Microsoft Cluster Service (MSCS) cluster group, also known as a resource group. Each resource group can contain at most one instance of SQL Server.
    A network name for the failover cluster instance.
    One or more IP addresses assigned to the failover cluster instance.
    One instance of SQL Server that includes SQL Server, SQL Server Agent, the Full-text Search (FTS) service, and Replication. You can install a failover cluster with SQL Server only, Analysis Services
    only, or SQL Server and Analysis Services
    http://msdn.microsoft.com/en-in/library/ms179410(v=sql.105).aspx

Maybe you are looking for