Creating a "Any" or "All" sql Select/Search

I'm in the process of building some search tools to query a
database and one of them is based on keywords entered in a text
field, by default the select statement search for "All" words
together and I would like to offer my users both "Any" and "All"
options. I have done something similar in asp a while back where I
would need some kind of function to split the words and then add
all of them to the query. How would I go about doing something
similar in Coldfusion? I'm still relatively new to it so sometimes
I get a bit stuck when trying to work with things I'm familiar with
when using asp.

Wendigo,
Your question reminded me of another forum post I saw
recently. You may find something useful in:
http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?catid=7&threadid=1222547
If you use MS SQL Server and feel comfortable working with
indexes, there is a full text indexing feature that might be right
up your alley.

Similar Messages

  • Oracle 9 , show all SQL selects on  particular table

    I wish to do some analysis on all the database accesses to a table over a period like the last week for example. The db version is 9.2.0.5. I am looking for similar views to the V$SQL view but with longer retention or any useful queries.
    Regards

    To the best of my knowledge (and I'm referring to 10g so 9i will be lesser if not the same), the amount of space reserved by Oracle for storing SQL statements is limited and they are only held onto really for query re-use, so queries can disappear after a period of time if they are not being re-used, to make room for new queries coming along. And these will be cleared out if the database is shut down e.g. if there's a problem or if it's taken down for backup purposes etc.
    I don't believe Oracle holds onto SQL's for such long periods as you are describing. You may be lucky if the database is little used, but if it's a well used production system, then your time is going to be more limited.

  • After installing iOS6, my Maps are not working at all, anything i search it says "result not found" even after placing a pin and selecting "Direction to here" i get the same result not found. Very disappointed with the new iOS

    After installing iOS6, my Maps are not working at all, anything i search it says "result not found" even after placing a pin and selecting "Direction to here" i get the same result not found. Very disappointed with the new iOS.

    Have you run it in a debugger? That will show you exactly what is happening and why.

  • I am unable to sync all my selected songs to my iphone.  The error message is that the computer is not authorized.  However, I have authorized the computer and iTunes confirms that.  Any ideas what can be done to fix this.  My phone is an iPhone 4S.

    I am unable to sync all my selected songs to my iphone.  The error message is that the computer is not authorized.  However, I have authorized the computer and iTunes confirms that.  Any ideas what can be done to fix this.  My phone is an iPhone 4S.

    Were some of the songs purchased from a different itunes account?

  • To display this page, Firefox must send information that will repeat any action (such as a search or order confirmation) that was performed earlier. How do i get rid of this message? or do i need to just drop firefox all together?

    To display this page, Firefox must send information that will repeat any action (such as a search or order confirmation) that was performed earlier. How do i get rid of this? it keeps pop n up and screw n up my stuff... if there is not a fix I will be dropping fox and going back to internet explorer.. this is not worth the headache!

    Are you getting that anytime you visit a page? Or after you hit the 'refresh', 'back' or 'forward' button?
    This error is not usually an error telling you that anything is broken, it's warning you that you are re-doing something you have already done. The page that you are trying to re-access, or refresh was a page that was doing something. Maybe you told the page to search for something, or you were filling out a form, or perhaps doing something like adding something to a shopping cart. Firefox warns you in case it's something you really don't want to do again; for example, accidentally buying a second toaster, or re-sending a comment form.
    If you only were searching or navigating around a page, it's generally ok to press the 'Resend' button.
    This safety feature is not unique to firefox, I can't offhand think of a browser that doesn't have it (though the wording may vary).
    However, if you are getting it constantly, every page you visit, on every website, all the time, then it's a bug.

  • I opened Adobe Acrobate XI Standard to create a form.  I then selected From Template, which took me to Adobe FormsCentral Online.  However, I think the form is an HTML web form.  All I wanted was a regular PDF form that I could email my co-workers for an

    I opened Adobe Acrobate XI Standard to create a form.  I then selected From Template, which took me to Adobe FormsCentral Online.  However, I think the form is an HTML web form.  All I wanted was a regular PDF form that I could email my co-workers for an internal project we're colletively working on.  Now I see that FormsCentral is going away and I can't get my doc to save as a PDF without an upgrade?  Help

    You should be able to log into the online Formscentral Acrobat XI air app and see your doc there. From there you would need to save it out as a PDF without a submit button to have it continue to work past July. If you don't see your online form(s) please let me know the adobeID you use to log into the service as well as the form name that is missing and I will look into it for you.
    Andrew

  • Creating smart playlists: how to combine "any" and "all"?

    I want to create a smart playlist, say with all songs by Miles Davis OR John Coltrane; and I also want to limit the playlist to songs rated above 3 stars. This seems like a really easy task, but I can't do it with the "create smart playlist" box on iTunes. Am I missing something? When I add the "above 3 stars" criteria, I get ALL the songs rated 4 stars or above, whether I add a criteria using "any" or "all."
    I want ONLY songs that are by Miles OR Coltrane AND above 3 stars. Is there any way to do so?
    Thanks!
    ~Peter

    I have to START with the "above 3 stars" criteria, not add it at the end.
    That is not correct. It makes no difference if it's at the beginning, middle or end.
    The smart playlist simply needs to be set up your correctly.

  • Can any body tell me how to create a layout variant in the selection

    hi friends i would like to know how to create a layout variant in the selection screen and how to select the variant to display the ouptut using the layout using disvariant.please if possible give me example. thanks in advance.

    hi,
    I shall give you the code. It will definitely work.
    <u><b>Declerations you need to make</b></u>
    data:      WK_VARIANT      LIKE DISVARIANT,
               WX_VARIANT      LIKE DISVARIANT,
               WK_REPID        LIKE SY-REPID,
               WK_VARIANT_SAVE(1) TYPE C,
               WK_EXIT(1) TYPE C.
    <b><u>Things you need to do in the initialization event:</u></b>
    INITIALIZATION.
      PERFORM F_INIT_VARIANT.
      PERFORM F_VARIANT_DEFAULT USING PR_VARI.
    *&      Form  f_init_variant
    FORM F_INIT_VARIANT .
      CLEAR WK_VARIANT.
      WK_REPID = SY-REPID.
      WK_VARIANT-REPORT = WK_REPID.
      WK_VARIANT-USERNAME = SY-UNAME.
      WK_VARIANT_SAVE = 'A'.
    ENDFORM.                    " f_init_variant
    *&      Form  f_variant_default
    FORM F_VARIANT_DEFAULT  USING    P_PR_VARI.
      WX_VARIANT = WK_VARIANT.
      IF NOT P_PR_VARI IS INITIAL.
        WX_VARIANT-VARIANT = P_PR_VARI.
      ENDIF.
      CALL FUNCTION 'LVC_VARIANT_DEFAULT_GET'
        EXPORTING
          I_SAVE        = WK_VARIANT_SAVE
        CHANGING
          CS_VARIANT    = WX_VARIANT
        EXCEPTIONS
          WRONG_INPUT   = 1
          NOT_FOUND     = 2
          PROGRAM_ERROR = 3
          OTHERS        = 4.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      CASE SY-SUBRC.
        WHEN 0.
          P_PR_VARI = WX_VARIANT-VARIANT.
        WHEN 2.
          CLEAR P_PR_VARI.
      ENDCASE.
    ENDFORM.                    " f_variant_default
    <b><u> After this Things you need to do in the At selection screen event:</u></b>
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR PR_VARI.
      PERFORM F_VARIANT_F4 USING PR_VARI.
    *&      Form  f_variant_f4
    FORM F_VARIANT_F4  USING    P_PR_VARI.
      CALL FUNCTION 'LVC_VARIANT_F4'
        EXPORTING
          IS_VARIANT    = WK_VARIANT
          I_SAVE        = WK_VARIANT_SAVE
        IMPORTING
          E_EXIT        = WK_EXIT
          ES_VARIANT    = WX_VARIANT
        EXCEPTIONS
          NOT_FOUND     = 1
          PROGRAM_ERROR = 2
          OTHERS        = 3.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      IF WK_EXIT IS INITIAL.
        WK_VARIANT-VARIANT = WX_VARIANT-VARIANT.
        P_PR_VARI = WX_VARIANT-VARIANT.
      ENDIF.
    ENDFORM.                    " f_variant_f4
    After this finally when you call the output using REUSE_ALV_GRID_DISPLAY YOU NEED TO mention this parameter in the function module
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          <i><u><b>IS_LAYOUT          = WA_LAYOUT</b></u></i>
          <i><u><b>I_SAVE             = 'X'</b></u></i>
          <u><i>I_DEFAULT          = 'X'</i></u>
          <u><b>IS_VARIANT         = WK_VARIANT</b></u>
        TABLES
          T_OUTTAB           = ITAB1
        EXCEPTIONS
          PROGRAM_ERROR      = 1
          OTHERS             = 2.
    Once you do this,,, you can create a layout variant.
    P.S. Mark all helpful answers for points.
    JLN

  • Is there any way I may set low resources priority for a specific job or even all SQL jobs?

    Is there any way I may set low resources priority for a specific job or even all SQL jobs? 
    Our database is quite big and everything works OK and very fast, except SQL jobs which are used mainly for maintenance purposes.
    I have one specific job which runs for 2 minutes and takes a lot of resources which may affect execution of other stored procedure which should be executed fast.The worst part is that this job has to be executed during the most active working hours. It does
    not matter for me how long will it take to execute this job. I just do not want it to use so much resources.
    Also I noticed when SQL backup job (takes about 4 minute) is scheduled it also takes a lot of resources and sometimes because of that I am receiving "login timeout" error on my web site.

     depending on you sql server version and edition, you can use resource governor and limit the cpu and memory.
    in most typical cases , you can use the session user name and times and classify the how much cpu and memory they can use. refer : https://msdn.microsoft.com/en-us/library/cc645892.aspx
    but in your case, the problem seems to be with the maintenance jobs which could run as sql server service account.
    also, if the backup are third party tool backup, you can specify the priority level and other options etc to make it less priority.
    it is possible to do that even with native backups such as specifying the limiting buffercount, max transfer size, if the server is memory pressured. sometimes, stripping the backups to multiple sets across different devices, could help as well. even though
    stripping the backups can introduce another complexity.
    may be you need to rethink you back up\recovery strategy.
    Hope it Helps!!

  • Hey, I would like to fix firefox on my computer. I can't type on it on any website or the search bar/web bar above! Any and all help would be appreciated. I

    Hey,
    I would like to fix firefox on my computer. I can't type on it on any website or the search bar/web bar above! Any and all help would be appreciated. I had to copy and past this message from explorer.
    Thank you!

    Hello,
    The Reset Firefox feature can fix many issues by restoring Firefox to its factory default state while saving your essential information. <br>
    '''Note''': ''This will cause you to lose any Extensions and some Preferences.''
    *Open websites will not be saved in Firefox versions lower than 25.
    To Reset Firefox do the following:
    #Go to Firefox > Help > Troubleshooting Information.
    #Click the "Reset Firefox" button.
    #Firefox will close and reset. After Firefox is done, it will show a window with the information that is imported. Click Finish.
    #Firefox will open with all factory defaults applied.
    Further information can be found in the [[Reset Firefox – easily fix most problems]] article.
    Did this fix your problems? Please report back to us!
    Thank you.

  • How to capture all the rows returned from a sql select query in CPO

    Hi,
      I am executing an sql select query which returns multiple rows. I need to capture the values of each row to specific variables. How do I proceed.
    Thanks,
    Swati

    The select activities  ("Select from Oracle," Select from SQL Server," etc.) against database already return tables.  Use one of the database adapters to do your select, and it will already be in a table form.  Just put your query in the select and identify the columns in your result table. The online help or the database adapter guides in the product documentation can help.

  • Error: Partition function can only be created in Enterprise edition of SQL Server

    By using the Generate Scripts option in SSMS, I've duplicated this DB seven times so far. I do this due to the 10 Gig limit on Sql Express 2012.  I was doing this again today. I generated the script, did a search/replace to provide a new DB name for
    DB number eight in the series, and then I ran the script to create the DB, causing the error message. I don't remember seeing this error in the past. It's possible I created the first edition of this DB at home, but back then I only had express edition as
    I seem to recall (although I did purchase Developer a few months ago).
    I don't even know what the Partition function does. I'll try to look that up tonight.
    SSMS did create the DB, I just hope the error message doesn't forebode any problems.
    USE [master]
    GO
    /****** Object: Database [Year2014_Aug_To_Dec] Script Date: 07/29/2014 03:55:19 PM ******/
    CREATE DATABASE [Year2014_Aug_To_Dec]
    CONTAINMENT = NONE
    ON PRIMARY
    ( NAME = N'Year2014_Aug_To_Dec', FILENAME = N'F:\FlatFilesDatabases\Year2014_Aug_To_Dec.mdf' , SIZE = 8832000KB , MAXSIZE = UNLIMITED, FILEGROWTH = 204800KB )
    LOG ON
    ( NAME = N'Year2014_Aug_To_Dec_Log', FILENAME = N'F:\FlatFilesDatabases\Year2014_Aug_To_Dec_Log.ldf' , SIZE = 230400KB , MAXSIZE = 2048GB , FILEGROWTH = 204800KB )
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET COMPATIBILITY_LEVEL = 110
    GO
    IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
    begin
    EXEC [Year2014_Aug_To_Dec].[dbo].[sp_fulltext_database] @action = 'enable'
    end
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ANSI_NULL_DEFAULT OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ANSI_NULLS OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ANSI_PADDING OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ANSI_WARNINGS OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ARITHABORT OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET AUTO_CLOSE ON
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET AUTO_CREATE_STATISTICS ON
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET AUTO_SHRINK OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET AUTO_UPDATE_STATISTICS ON
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET CURSOR_CLOSE_ON_COMMIT OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET CURSOR_DEFAULT GLOBAL
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET CONCAT_NULL_YIELDS_NULL OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET NUMERIC_ROUNDABORT OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET QUOTED_IDENTIFIER OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET RECURSIVE_TRIGGERS OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET DISABLE_BROKER
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET DATE_CORRELATION_OPTIMIZATION OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET TRUSTWORTHY OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET ALLOW_SNAPSHOT_ISOLATION OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET PARAMETERIZATION SIMPLE
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET READ_COMMITTED_SNAPSHOT OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET HONOR_BROKER_PRIORITY OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET RECOVERY SIMPLE
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET MULTI_USER
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET PAGE_VERIFY CHECKSUM
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET DB_CHAINING OFF
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET TARGET_RECOVERY_TIME = 0 SECONDS
    GO
    USE [Year2014_Aug_To_Dec]
    GO
    /****** Object: User [NT SERVICE\MSSQL$SQLEXPRESS] Script Date: 07/29/2014 03:55:20 PM ******/
    CREATE USER [NT SERVICE\MSSQL$SQLEXPRESS] FOR LOGIN [NT Service\MSSQL$SQLEXPRESS] WITH DEFAULT_SCHEMA=[NT SERVICE\MSSQL$SQLEXPRESS]
    GO
    /****** Object: User [NT Authority\Authenticated Users] Script Date: 07/29/2014 03:55:20 PM ******/
    CREATE USER [NT Authority\Authenticated Users] FOR LOGIN [NT AUTHORITY\Authenticated Users] WITH DEFAULT_SCHEMA=[NT Authority\Authenticated Users]
    GO
    /****** Object: User [BUILTIN\USERS] Script Date: 07/29/2014 03:55:20 PM ******/
    CREATE USER [BUILTIN\USERS] FOR LOGIN [BUILTIN\Users]
    GO
    /****** Object: Schema [NT Authority\Authenticated Users] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE SCHEMA [NT Authority\Authenticated Users]
    GO
    /****** Object: Schema [NT SERVICE\MSSQL$SQLEXPRESS] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE SCHEMA [NT SERVICE\MSSQL$SQLEXPRESS]
    GO
    /****** Object: FullTextCatalog [Catalog1] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE FULLTEXT CATALOG [Catalog1]WITH ACCENT_SENSITIVITY = ON
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_06A2E7C5] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_06A2E7C5](varbinary(128)) AS RANGE LEFT FOR VALUES (0x00390039003200380035, 0x006E006E0033003000320034)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_11A1FB2A] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_11A1FB2A](varbinary(128)) AS RANGE LEFT FOR VALUES (0x006100730073006F006300690061007400650073, 0x006E006E003200320032003700350037003300310030003400300035)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_171D3F63] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_171D3F63](varbinary(128)) AS RANGE LEFT FOR VALUES (0x00610072006900650078006900650074, 0x006E006E003200390035003200330033003400310030)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_1FA6CD15] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_1FA6CD15](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0063006F00720070006F0072006100740069006F006E, 0x006E006E0033003500340031003800390031)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_25DC6753] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_25DC6753](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0061007000700072006F007600650064, 0x006E006E00320033003200380035)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_2B429CF3] Script Date: 07/29/2014 03:55:21 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_2B429CF3](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0069006E006500730068006F006D)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_2D3F28A7] Script Date: 07/29/2014 03:55:22 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_2D3F28A7](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0062006F0078, 0x006E006E003200390034003900320033003000350033)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_32ED1505] Script Date: 07/29/2014 03:55:22 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_32ED1505](varbinary(128)) AS RANGE LEFT FOR VALUES (0x006100690064, 0x006E006E00330036)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_3E6129B6] Script Date: 07/29/2014 03:55:22 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_3E6129B6](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0036003600340038, 0x006C00610074006F0074, 0x006E006E00360031003800380038)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_3FC721DF] Script Date: 07/29/2014 03:55:22 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_3FC721DF](varbinary(128)) AS RANGE LEFT FOR VALUES (0x006300680075006E006B, 0x006E006E0034003300330031006400360031)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_4695B1AD] Script Date: 07/29/2014 03:55:22 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_4695B1AD](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0061006D006F0075006E0074, 0x006E006E003200370064003200330032)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_475E2206] Script Date: 07/29/2014 03:55:23 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_475E2206](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0061007200610079006B)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_52082FB0] Script Date: 07/29/2014 03:55:23 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_52082FB0](varbinary(128)) AS RANGE LEFT FOR VALUES (0x00640065007400610069006C, 0x006E006E003300300038003400320032)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_53473803] Script Date: 07/29/2014 03:55:23 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_53473803](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0061006F00730069, 0x006E006E003200350032003900340031)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_6A54BA8D] Script Date: 07/29/2014 03:55:23 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_6A54BA8D](varbinary(128)) AS RANGE LEFT FOR VALUES (0x00620061006E006B, 0x006E006E003300310064003000370032)
    GO
    /****** Object: PartitionFunction [ifts_comp_fragment_partition_function_7D7C9D9A] Script Date: 07/29/2014 03:55:23 PM ******/
    CREATE PARTITION FUNCTION [ifts_comp_fragment_partition_function_7D7C9D9A](varbinary(128)) AS RANGE LEFT FOR VALUES (0x0063006100720072006900650072, 0x006E006E00330032003700330033)
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_06A2E7C5] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_06A2E7C5] AS PARTITION [ifts_comp_fragment_partition_function_06A2E7C5] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_11A1FB2A] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_11A1FB2A] AS PARTITION [ifts_comp_fragment_partition_function_11A1FB2A] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_171D3F63] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_171D3F63] AS PARTITION [ifts_comp_fragment_partition_function_171D3F63] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_1FA6CD15] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_1FA6CD15] AS PARTITION [ifts_comp_fragment_partition_function_1FA6CD15] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_25DC6753] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_25DC6753] AS PARTITION [ifts_comp_fragment_partition_function_25DC6753] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_2B429CF3] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_2B429CF3] AS PARTITION [ifts_comp_fragment_partition_function_2B429CF3] TO ([PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_2D3F28A7] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_2D3F28A7] AS PARTITION [ifts_comp_fragment_partition_function_2D3F28A7] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_32ED1505] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_32ED1505] AS PARTITION [ifts_comp_fragment_partition_function_32ED1505] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_3E6129B6] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_3E6129B6] AS PARTITION [ifts_comp_fragment_partition_function_3E6129B6] TO ([PRIMARY], [PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_3FC721DF] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_3FC721DF] AS PARTITION [ifts_comp_fragment_partition_function_3FC721DF] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_4695B1AD] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_4695B1AD] AS PARTITION [ifts_comp_fragment_partition_function_4695B1AD] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_475E2206] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_475E2206] AS PARTITION [ifts_comp_fragment_partition_function_475E2206] TO ([PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_52082FB0] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_52082FB0] AS PARTITION [ifts_comp_fragment_partition_function_52082FB0] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_53473803] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_53473803] AS PARTITION [ifts_comp_fragment_partition_function_53473803] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_6A54BA8D] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_6A54BA8D] AS PARTITION [ifts_comp_fragment_partition_function_6A54BA8D] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: PartitionScheme [ifts_comp_fragment_data_space_7D7C9D9A] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE PARTITION SCHEME [ifts_comp_fragment_data_space_7D7C9D9A] AS PARTITION [ifts_comp_fragment_partition_function_7D7C9D9A] TO ([PRIMARY], [PRIMARY], [PRIMARY])
    GO
    /****** Object: StoredProcedure [dbo].[Files_RecordCountLastThreeDays_ByFolder] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROC [dbo].[Files_RecordCountLastThreeDays_ByFolder]
    @ListOfFolders varchar(max)
    AS
    -- This query pulls only those folders DID have at least one success (a new file added)
    With FoldersWithHits AS(
    SELECT COUNT(*) AS NUMFILESADDED, Value as Folder
    FROM funcSplit('|', @ListOfFolders) As Folders
    inner join Files on CHARINDEX(Folders.Value, Files.AGGREGATEPATH) = 1
    WHERE DateAdded > DATEADD(DD, -4, GETDATE())
    Group By Value
    Select * from FoldersWithHits
    Union All
    -- To get a list of those folders that did NOT have any new files added,
    -- resuse the first query - use the above list of successes to do an exclusion
    select 0 as NumFilesAdded, Folders.VAlue as Folder
    From funcSplit('|', @ListOfFolders) As Folders
    Left Join FoldersWithHits on FoldersWithHits.Folder = Folders.Value
    Where FoldersWithHits.folder is null
    GO
    /****** Object: StoredProcedure [dbo].[FILES_SP_FINDTHISMOVEDFILE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE Proc [dbo].[FILES_SP_FINDTHISMOVEDFILE]
    @NameOfFile varchar(2000),
    @NameOfZipFile varchar(2000),
    @FileSize int
    As
    -- Here find the zipfile by passing in the name of the zipfile as @NameOfZipFile
    Select AggregatePath, 'Found ZipFile By Name' as TypeOfHit From dbo.Files where NameOfFile = @NameOfZipFile
    UNION
    Select AggregatePath, 'Found ZipFile By Name' as TypeOfHit From dbo.FilesNewLocations where NameOfFile = @NameOfZipFile
    UNION
    -- Here find the file itself (not just the zipfile) by finding two names: the filename and zipFilename.
    Select AggregatePath, 'Found Filename' as TypeOfHit From dbo.FilesNewLocations where Len(NameOfZipFile) > 0 AND NameOfFile = @NameOfFile And NameOfZipFile = @NameOfZipFile
    union
    Select AggregatePath, 'Found Filename' as TypeOfHit From dbo.FilesNewLocations where Len(NameOfZipFile) > 0 AND NameOfFile = @NameOfFile And NameOfZipFile = @NameOfZipFile
    union
    -- Here find the file by size
    Select AGGREGATEPATH, 'Found By Size' as TypeOfHit From dbo.Files where FileSize = @FileSize ANd NameOfFile = @NameOfFile
    UNION
    Select AGGREGATEPATH, 'Found By Size' as TypeOfHit From dbo.FilesNewLocations where FileSize = @FileSize ANd NameOfFile = @NameOfFile
    Grant Execute ON dbo.Files_SP_FindThisMovedFile To [BuiltIn\Users]
    CREATE NONCLUSTERED INDEX idx_FilesNewLocations_CreationDate ON Files (CreationDate)
    CREATE NONCLUSTERED INDEX idx_FilesNewLocations_FileSize ON Files (FileSize)
    CREATE NONCLUSTERED INDEX idx_FilesNewLocations_NameOfFile ON Files (NameOfFile)
    CREATE NONCLUSTERED INDEX idx_FilesNewLocations_NameOfZipFile ON Files (NameOfZipFile)
    CREATE NONCLUSTERED INDEX idx_FilesNewLocations_AggregatePath ON Files (AggregatePath)
    GO
    /****** Object: StoredProcedure [dbo].[FILES_SP_GETEPOCALIPSETEXT] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FILES_SP_GETEPOCALIPSETEXT]
    @AGGREGATEPATH VARCHAR(700)
    AS
    SET NOCOUNT ON
    SELECT F.EPOCALIPSETEXT FROM FILES AS F
    WHERE F.AGGREGATEPATH = @AGGREGATEPATH
    GO
    /****** Object: StoredProcedure [dbo].[FILES_SP_INSERTFILE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FILES_SP_INSERTFILE]
    @AGGREGATEPATH VARCHAR(4000),
    @CREATIONDATE DATETIME,
    @EPOCALIPSETEXT VARCHAR(MAX),
    @FILEID INT OUTPUT,
    @PC VARCHAR(2000),
    @FILESIZE INT,
    @NAMEOFFILE VARCHAR(2000),
    @ZIPPED BIT,
    @NAMEOFZIPFILE VARCHAR(2000)
    AS
    SET NOCOUNT ON
    DECLARE @DATEADDED SMALLDATETIME
    SELECT @DATEADDED = CONVERT(VARCHAR(12), GETDATE(), 101)
    INSERT INTO DBO.FILES (DATEADDED, AGGREGATEPATH, CREATIONDATE,EPOCALIPSETEXT, PC, FILESIZE, NAMEOFFILE, ZIPPED, NAMEOFZIPFILE)
    VALUES(@DATEADDED, @AGGREGATEPATH,@CREATIONDATE,@EPOCALIPSETEXT, @PC, @FILESIZE, @NAMEOFFILE, @ZIPPED, @NAMEOFZIPFILE)
    SELECT @FILEID=SCOPE_IDENTITY()
    GO
    /****** Object: StoredProcedure [dbo].[FILES_SP_ISDUPFILE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FILES_SP_ISDUPFILE]
    @AGGREGATEPATH VARCHAR(2000)
    AS
    SET NOCOUNT ON
    SELECT FILEID FROM DBO.FILES WHERE AGGREGATEPATH= @AGGREGATEPATH
    GO
    /****** Object: StoredProcedure [dbo].[FILES_SP_RECORDCOUNTLASTSEVENDAYS] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROC [dbo].[FILES_SP_RECORDCOUNTLASTSEVENDAYS]
    AS
    SELECT PC, COUNT(*) AS NUMFILESADDED, CONVERT(VARCHAR(12),CONVERT(SMALLDATETIME, DATEADDED, 101), 101) AS DATEADDED FROM FILES
    WHERE DATEADDED > DATEADD(DD, -9, GETDATE())
    GROUP BY PC, CONVERT(SMALLDATETIME, DATEADDED, 101)
    ORDER BY PC, CONVERT(SMALLDATETIME, DATEADDED, 101) DESC
    GO
    /****** Object: StoredProcedure [dbo].[FILESNEWLOCATIONS_SP_INSERTFILE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FILESNEWLOCATIONS_SP_INSERTFILE]
    @AGGREGATEPATH VARCHAR(4000),
    @CREATIONDATE DATETIME,
    @FILESIZE INT,
    @NAMEOFFILE VARCHAR(2000),
    @NAMEOFZIPFILE VARCHAR(2000)
    AS
    SET NOCOUNT ON
    INSERT INTO DBO.FILESNEWLOCATIONS (AGGREGATEPATH, CREATIONDATE,FILESIZE, NAMEOFFILE, NAMEOFZIPFILE)
    VALUES(@AGGREGATEPATH,@CREATIONDATE,@FILESIZE, @NAMEOFFILE, @NAMEOFZIPFILE)
    GRANT EXECUTE ON DBO.FILESNEWLOCATIONS_SP_INSERTFILE TO [BUILTIN\USERS]
    GO
    /****** Object: StoredProcedure [dbo].[FILESNEWLOCATIONS_SP_ISDUPNEWLOCATION] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FILESNEWLOCATIONS_SP_ISDUPNEWLOCATION]
    @AGGREGATEPATH VARCHAR(2000)
    AS
    SET NOCOUNT ON
    SELECT COUNT(*) FROM DBO.FILESNEWLOCATIONS WHERE AGGREGATEPATH= @AGGREGATEPATH
    GO
    /****** Object: StoredProcedure [dbo].[FOLDERS_SP_DELETEALLFOLDERS] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[FOLDERS_SP_DELETEALLFOLDERS]
    AS
    SET NOCOUNT ON
    DELETE FROM FOLDERS
    GO
    /****** Object: StoredProcedure [dbo].[FOLDERS_SP_INSERTFOLDER] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROC [dbo].[FOLDERS_SP_INSERTFOLDER]
    @THEPATH VARCHAR(4000),
    @FRIENDLYNAME VARCHAR(4000)
    AS
    INSERT INTO FOLDERS ([PATH], FRIENDLYNAME) VALUES (@THEPATH, @FRIENDLYNAME)
    GO
    /****** Object: StoredProcedure [dbo].[MISC_SP_SETDBSTARTDATEANDENDDATE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[MISC_SP_SETDBSTARTDATEANDENDDATE]
    @STARTDATE DATETIME,
    @ENDDATE DATETIME
    AS
    BEGIN
    DECLARE @HASDATE TINYINT
    SELECT @HASDATE = COUNT(*) FROM MISC WHERE KIND LIKE 'STARTDATE'
    IF @HASDATE > 0
    BEGIN
    UPDATE DBO.MISC
    SET DATECOL =
    CASE KIND
    WHEN 'STARTDATE' THEN @STARTDATE
    WHEN 'ENDDATE' THEN @ENDDATE
    END
    END
    ELSE
    BEGIN
    INSERT INTO DBO.MISC(KIND, DATECOL) VALUES('STARTDATE', @STARTDATE)
    INSERT INTO DBO.MISC(KIND, DATECOL) VALUES('ENDDATE', @ENDDATE)
    END
    END
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_FINDWORDFORSELECTEDFOLDERS] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[PAGES_SP_FINDWORDFORSELECTEDFOLDERS]
    @KEYWORD VARCHAR(500),
    @STARTDATE DATETIME,
    @ENDDATE DATETIME
    AS
    SET NOCOUNT ON
    SELECT TOP 5000 * FROM
    SELECT P.PAGENO AS PGNO,FD.FRIENDLYNAME AS FOLDER, F.CREATIONDATE, 'PAGE' AS [TYPE], F.AGGREGATEPATH AS FULLPATH FROM
    CONTAINSTABLE(PAGES, OCRTEXT, @KEYWORD) AS FULLTEXTTABLE
    INNER JOIN PAGES AS P ON P.PAGEID = FULLTEXTTABLE.[KEY]
    INNER JOIN FILES AS F ON F.FILEID = P.FILEID
    INNER JOIN FOLDERS AS FD ON CHARINDEX(FD.PATH + '\', F.AGGREGATEPATH) = 1
    WHERE F.CREATIONDATE BETWEEN @STARTDATE AND @ENDDATE
    UNION ALL
    SELECT NULL AS PGNO, FD.FRIENDLYNAME AS FOLDER, F.CREATIONDATE, 'FILE' AS [TYPE], F.AGGREGATEPATH AS FULLPATH FROM
    CONTAINSTABLE(FILES, EPOCALIPSETEXT, @KEYWORD) AS FULLTEXTTABLE
    INNER JOIN FILES AS F ON F.FILEID = FULLTEXTTABLE.[KEY]
    INNER JOIN FOLDERS AS FD ON CHARINDEX(FD.PATH + '\', F.AGGREGATEPATH) = 1
    WHERE F.CREATIONDATE BETWEEN @STARTDATE AND @ENDDATE
    ) THERESULTS
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_FINDWORDFORSELECTEDFOLDERS_V2] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[PAGES_SP_FINDWORDFORSELECTEDFOLDERS_V2]
    @KEYWORD VARCHAR(500),
    @STARTDATE DATETIME,
    @ENDDATE DATETIME
    AS
    SET NOCOUNT ON
    SELECT TOP 5000 * FROM
    SELECT P.PAGENO AS PGNO,FD.FRIENDLYNAME AS FOLDER, F.CREATIONDATE, 'PAGE' AS [TYPE], F.AGGREGATEPATH AS FULLPATH, F.FILESIZE FROM
    CONTAINSTABLE(PAGES, OCRTEXT, @KEYWORD) AS FULLTEXTTABLE
    INNER JOIN PAGES AS P ON P.PAGEID = FULLTEXTTABLE.[KEY]
    INNER JOIN FILES AS F ON F.FILEID = P.FILEID
    INNER JOIN FOLDERS AS FD ON CHARINDEX(FD.PATH + '\', F.AGGREGATEPATH) = 1
    WHERE F.CREATIONDATE BETWEEN @STARTDATE AND @ENDDATE
    UNION ALL
    SELECT NULL AS PGNO, FD.FRIENDLYNAME AS FOLDER, F.CREATIONDATE, 'FILE' AS [TYPE], F.AGGREGATEPATH AS FULLPATH, F.FILESIZE
    FROM
    CONTAINSTABLE(FILES, EPOCALIPSETEXT, @KEYWORD) AS FULLTEXTTABLE
    INNER JOIN FILES AS F ON F.FILEID = FULLTEXTTABLE.[KEY]
    INNER JOIN FOLDERS AS FD ON CHARINDEX(FD.PATH + '\', F.AGGREGATEPATH) = 1
    WHERE F.CREATIONDATE BETWEEN @STARTDATE AND @ENDDATE
    ) THERESULTS
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_GETOCRTEXT] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[PAGES_SP_GETOCRTEXT]
    @PAGENO INT,
    @AGGREGATEPATH VARCHAR(700)
    AS
    SET NOCOUNT ON
    SELECT P.OCRTEXT FROM PAGES AS P
    INNER JOIN FILES AS F ON F.FILEID = P.FILEID
    WHERE F.AGGREGATEPATH = @AGGREGATEPATH AND P.PAGENO = @PAGENO
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_GETOCRTEXTFORALLPAGESOFTHISFILE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROC [dbo].[PAGES_SP_GETOCRTEXTFORALLPAGESOFTHISFILE]
    @AGGREGATEPATH VARCHAR(5000)
    AS
    SELECT PAGES.OCRTEXT FROM PAGES
    INNER JOIN FILES ON FILES.FILEID = PAGES.FILEID
    WHERE FILES.AGGREGATEPATH = @AGGREGATEPATH
    ORDER BY PAGENO
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_INSERTPAGE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[PAGES_SP_INSERTPAGE]
    @OCRTEXT VARCHAR(MAX),
    @FILEID INT,
    @PAGENO INT
    AS
    SET NOCOUNT ON
    INSERT INTO DBO.PAGES (OCRTEXT, FILEID, PAGENO) VALUES (@OCRTEXT, @FILEID, @PAGENO)
    GO
    /****** Object: StoredProcedure [dbo].[PAGES_SP_ISDUPPAGE] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[PAGES_SP_ISDUPPAGE]
    @FILEID INT,
    @PAGENO INT
    AS
    SET NOCOUNT ON
    SELECT PAGENO FROM DBO.PAGES WHERE FILEID = @FILEID AND PAGENO = @PAGENO
    GO
    /****** Object: StoredProcedure [dbo].[usp_RaiseError] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[usp_RaiseError]
    @CustomMessage nvarchar(4000) = ' '
    AS
    -- Exit out if there is no error information to retrieve.
    IF ERROR_NUMBER() IS NULL RETURN;
    DECLARE
    @strErrorMessage NVARCHAR(4000),
    @ErrorNumber INT,
    @Severity INT,
    @ErrorState INT,
    @Line INT,
    @ProcedureName NVARCHAR(200),
    @Msg nvarchar(max);
    -- Store all the error info in some temp variables (not sure why he does this)
    SELECT -- the SELECT keyword apparently means SET in this case.
    @ErrorNumber = ERROR_NUMBER(), -- SETs the value of the @-variable.
    @Severity = ERROR_SEVERITY(), -- SETs the value of the @-variable.
    @ErrorState = ERROR_STATE(), -- SETs the value of the @-variable.
    @Line = ERROR_LINE(), -- SETs the value of the @-variable.
    @ProcedureName = ISNULL(ERROR_PROCEDURE(), '-'),
    @Msg = Error_Message();
    -- Build the message string. The "N" means literal string, and each %d is
    -- a standin for a number, and we'll populate these standins later.
    SET @strErrorMessage = @CustomMessage + N'Error %d, Severity %d, State %d, Procedure %s, Line %d, '
    + 'Message: '+ @Msg;
    RAISERROR (-- This is the built-in RAISEERROR command. Requires 2 vals, then the standin-values
    @strErrorMessage, -- You must supply two values before you can populate the standins
    @Severity, -- first value, required.
    1, -- second value, required
    @ErrorNumber, -- populates a standin
    @Severity, -- populates a standin
    @ErrorState, -- populates a standin
    @ProcedureName, -- populates a standin
    @Line -- populates a standin
    GO
    /****** Object: StoredProcedure [dbo].[usp_RebuildIndexes] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE Procedure [dbo].[usp_RebuildIndexes]
    AS
    Declare @fetch_TableName NVARCHAR(256)
    DECLARE Cursor_Tables CURSOR FOR
    SELECT Name FROM sysobjects WHERE xtype ='U'
    OPEN Cursor_Tables
    While 1 = 1 -- Begin to Loop through all tables
    BEGIN
    FETCH NEXT FROM Cursor_Tables INTO @fetch_TableName -- fetches the next table
    if @@FETCH_STATUS <> 0 break
    print '---------' + @fetch_TableName
    Declare @fetch_indexName NVARCHAR(256) -- loops through al indexes of the current table
    DECLARE Cursor_Indexes CURSOR FOR -- Looking for indexes fragmented more than 15 percent.
    SELECT name as indexName
    FROM sys.dm_db_index_physical_stats (DB_ID(DB_Name()), OBJECT_ID(@fetch_TableName), NULL, NULL, NULL) AS a
    JOIN sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id
    Where Name is not null and avg_fragmentation_in_percent > 7
    OPEN Cursor_Indexes
    WHILE 1= 1 -- Begin to Loop through all Indexes
    BEGIN
    FETCH NEXT FROM [Cursor_Indexes] INTO @fetch_indexName
    if @@FETCH_STATUS <> 0 break
    Declare @SqL nvarchar(2000) = N'
    BEGIN TRY
    ALTER INDEX ' + @fetch_indexName + ' ON ' + DB_Name() + '.dbo.' + @fetch_TableName + ' Rebuild
    END TRY
    BEGIN CATCH
    Declare @err nvarchar(2000) = ERROR_MESSAGE();
    throw 51000, @err, 1
    END CATCH'
    Execute sp_executeSQL @sql
    End -- Ends looping through all indexes
    CLOSE [Cursor_Indexes]
    DEALLOCATE [Cursor_Indexes]
    End -- Ends looping through all tables
    CLOSE Cursor_Tables
    DEALLOCATE Cursor_Tables
    GO
    /****** Object: UserDefinedFunction [dbo].[funcSplit] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE function [dbo].[funcSplit](@splitChar varchar(1), @CSV nvarchar(max))
    Returns @Results Table (Value nvarchar(max))
    As
    Begin
    Declare @lastChar nvarchar(1) = substring(@CSV, len(@CSV), 1)
    -- Make sure the string ends in a comma. If not, append one.
    if @lastChar <> @splitChar set @CSV = @CSV + @splitChar
    Declare @posOfComma int = 0
    Declare @LastPosOfComma int = 0
    While 1 = 1
    Begin
    Set @posOfComma = CHARINDEX(@splitChar ,@CSV, @LastPosOfComma)
    if @posOfComma = 0 break
    Declare @Length int = @posOfComma - @LastPosOfComma
    if @Length > 0
    Begin
    Declare @Phrase nvarchar(max) = substring(@CSV, @LastPosOfComma, @Length)
    Insert Into @Results (Value) VALUES (@Phrase)
    end
    set @LastPosOfComma = @posOfComma +1
    if @LastPosOfComma > Len(@CSV) break
    END
    Return
    End
    GO
    /****** Object: Table [dbo].[FILES] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    CREATE TABLE [dbo].[FILES](
    [AGGREGATEPATH] [varchar](900) NOT NULL,
    [NAMEOFFILE] [varchar](300) NOT NULL,
    [NAMEOFZIPFILE] [varchar](300) NOT NULL,
    [FILEID] [int] IDENTITY(1,1) NOT NULL,
    [CREATIONDATE] [datetime] NOT NULL,
    [EPOCALIPSETEXT] [varchar](max) NOT NULL,
    [DATEADDED] [datetime] NOT NULL,
    [PC] [varchar](30) NOT NULL,
    [FILESIZE] [int] NOT NULL,
    [ZIPPED] [bit] NOT NULL,
    CONSTRAINT [PK_FILES] PRIMARY KEY CLUSTERED
    [FILEID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UQ_Files_AggregatePath] UNIQUE NONCLUSTERED
    [AGGREGATEPATH] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UQ_Files_FileID] UNIQUE NONCLUSTERED
    [FILEID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object: Table [dbo].[FilesNewLocations] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    CREATE TABLE [dbo].[FilesNewLocations](
    [AggregatePath] [varchar](900) NOT NULL,
    [NameOfFile] [varchar](300) NOT NULL,
    [NameOfZipFile] [varchar](300) NOT NULL,
    [LocationID] [int] IDENTITY(1,1) NOT NULL,
    [CreationDate] [datetime] NOT NULL,
    [Filesize] [int] NOT NULL,
    CONSTRAINT [PK_FilesNewLocations] PRIMARY KEY CLUSTERED
    [LocationID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UQ_FilesNew_AggregatePath] UNIQUE NONCLUSTERED
    [AggregatePath] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object: Table [dbo].[FOLDERS] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    CREATE TABLE [dbo].[FOLDERS](
    [FOLDERID] [int] IDENTITY(1,1) NOT NULL,
    [PATH] [varchar](900) NOT NULL,
    [FRIENDLYNAME] [nvarchar](500) NULL,
    CONSTRAINT [PK_Folders_Path] PRIMARY KEY CLUSTERED
    [PATH] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UQ_Folders_FolderID] UNIQUE NONCLUSTERED
    [FOLDERID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object: Table [dbo].[MISC] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[MISC](
    [BOOLEANCOL] [bit] NULL,
    [KIND] [nvarchar](4000) NULL,
    [STRINGCOL] [nvarchar](4000) NULL,
    [DATECOL] [datetime] NULL,
    [INTEGERCOL] [int] NULL,
    [MISCELLANEOUSID] [int] IDENTITY(1,1) NOT NULL,
    CONSTRAINT [idx_Misc_MiscellaneousID] UNIQUE NONCLUSTERED
    [MISCELLANEOUSID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    /****** Object: Table [dbo].[PAGES] Script Date: 07/29/2014 03:55:24 PM ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    CREATE TABLE [dbo].[PAGES](
    [OCRTEXT] [varchar](max) NULL,
    [FILEID] [int] NOT NULL,
    [PAGENO] [int] NOT NULL,
    [PAGEID] [int] IDENTITY(1,1) NOT NULL,
    CONSTRAINT [PK_PAGES] PRIMARY KEY CLUSTERED
    [PAGEID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UQ_FILEID_PAGENO] UNIQUE NONCLUSTERED
    [FILEID] ASC,
    [PAGENO] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
    GO
    SET ANSI_PADDING OFF
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_Files_AggregatePath] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_AggregatePath] ON [dbo].[FILES]
    [AGGREGATEPATH] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_Files_CreationDate] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_CreationDate] ON [dbo].[FILES]
    [CREATIONDATE] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_Files_DateAdded] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_DateAdded] ON [dbo].[FILES]
    [DATEADDED] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_Files_FileSize] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_FileSize] ON [dbo].[FILES]
    [FILESIZE] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_Files_NameOfFile] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_NameOfFile] ON [dbo].[FILES]
    [NAMEOFFILE] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_Files_NameOfZipFile] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_NameOfZipFile] ON [dbo].[FILES]
    [NAMEOFZIPFILE] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_Files_PC] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_PC] ON [dbo].[FILES]
    [PC] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_Files_Zipped] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Files_Zipped] ON [dbo].[FILES]
    [ZIPPED] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_FilesNewLocations_AggregatePath] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_FilesNewLocations_AggregatePath] ON [dbo].[FilesNewLocations]
    [AggregatePath] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_FilesNewLocations_CreationDate] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_FilesNewLocations_CreationDate] ON [dbo].[FilesNewLocations]
    [CreationDate] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_FilesNewLocations_FileSize] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_FilesNewLocations_FileSize] ON [dbo].[FilesNewLocations]
    [Filesize] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_FilesNewLocations_NameOfFile] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_FilesNewLocations_NameOfFile] ON [dbo].[FilesNewLocations]
    [NameOfFile] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    SET ANSI_PADDING ON
    GO
    /****** Object: Index [idx_FilesNewLocations_NameOfZipFile] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_FilesNewLocations_NameOfZipFile] ON [dbo].[FilesNewLocations]
    [NameOfZipFile] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    /****** Object: Index [idx_Pages_FileID] Script Date: 07/29/2014 03:55:24 PM ******/
    CREATE NONCLUSTERED INDEX [idx_Pages_FileID] ON [dbo].[PAGES]
    [FILEID] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    GO
    ALTER TABLE [dbo].[FILES] ADD DEFAULT ('') FOR [NAMEOFZIPFILE]
    GO
    ALTER TABLE [dbo].[FILES] ADD DEFAULT ('') FOR [EPOCALIPSETEXT]
    GO
    ALTER TABLE [dbo].[FILES] ADD DEFAULT ((0)) FOR [ZIPPED]
    GO
    USE [master]
    GO
    ALTER DATABASE [Year2014_Aug_To_Dec] SET READ_WRITE
    GO

    8A partition function is used when you partition a table. Partitioned tables is a feature that is available only in Enterprise and Developer Edition.
    I went through the script, and there are a number of partition functions and partition schemes, but they are not used anywhere, so you should be able to ignore the error.
    Erland Sommarskog, SQL Server MVP, [email protected]

  • How can I use SQL to search for a pattern within a field?

    Hello, Frank, Solomon, ect
    I am now faced with this particular scenario, I've got the SQL to search through a field to find text within the field, but I have to know what it is before it can look for it.
    What I have to do is this:
    Search through a field, for a pattern, and I won't know what the data is I am looking for. Can this be done in SQL?
    For instance, Here is my SQL this far, I was helped allot in order to get to this point.
    select table_name,
           column_name,
           :search_string search_string,
           result
      from (select column_name,
                   table_name,
                   'ora:view("' || table_name || '")/ROW/' || column_name || '[ora:contains(text(),"%' || :search_string || '%") > 0]' str
              from cols
             where table_name in ('TABLE1', 'TABLE2')),
           xmltable (str columns result varchar2(10) path '.')
    When you execute the above SQL, you have to pass in a value. What I really need is to alter the above SQL, to make it search for a pattern that exist's within the text of the field itself.
    Like for instance, lets say the pattern I am looking for is this" xx-xxxxx-xxxx" and it's somewhere in a field.
    I need to alter this SQL to take this pattern and search through all the schemas and tables to look for this pattern match.
    Can be done?

    When you use something dynamically within a function or procedure, roles do not apply and privileges must be granted directly.  So, you need to grant select on dba_tab_cols directly.  If you want to do pattern matching then you should use regular expressions.  The following example grants the proper privileges and uses regexp_instr to find all values containing the pattern xxx-xxxx-xxxx, where /S is used for any non-space character.  I limited the tables in order to save time and output for the test, but you can eliminate that where clause.
    SYS@orcl> CREATE USER test IDENTIFIED BY test
      2  /
    User created.
    SYS@orcl> ALTER USER test QUOTA UNLIMITED ON USERS
      2  /
    User altered.
    SYS@orcl> GRANT CREATE SESSION, CREATE TABLE TO test
      2  /
    Grant succeeded.
    SYS@orcl> GRANT SELECT ON dba_tab_cols TO test
      2  /
    Grant succeeded.
    SYS@orcl> CONNECT test/test
    Connected.
    TEST@orcl> SET LINESIZE 90
    TEST@orcl> CREATE TABLE table1
      2    (tab1_col1  VARCHAR2(60))
      3  /
    Table created.
    TEST@orcl> INSERT ALL
      2  INTO table1 (tab1_col1) VALUES ('xxx-xxxx-xxxx')
      3  INTO table1 (tab1_col1) VALUES ('matching abc-defg-hijk data')
      4  INTO table1 (tab1_col1) VALUES ('other data')
      5  SELECT * FROM DUAL
      6  /
    3 rows created.
    TEST@orcl> CREATE TABLE table2
      2    (tab2_col2  VARCHAR2(30))
      3  /
    Table created.
    TEST@orcl> INSERT ALL
      2  INTO table2 (tab2_col2) VALUES ('this BCD-EFGH-IJKL too')
      3  INTO table2 (tab2_col2) VALUES ('something else')
      4  SELECT * FROM DUAL
      5  /
    2 rows created.
    TEST@orcl> VAR search_string VARCHAR2(24)
    TEST@orcl> EXEC :search_string := '\S\S\S-\S\S\S\S-\S\S\S\S'
    PL/SQL procedure successfully completed.
    TEST@orcl> COLUMN "Searchword"     FORMAT A24
    TEST@orcl> COLUMN "Table"     FORMAT A6
    TEST@orcl> COLUMN "Column/Value" FORMAT A50
    TEST@orcl> SELECT DISTINCT SUBSTR (:search_string, 1, 24) "Searchword",
      2               SUBSTR (table_name, 1, 14) "Table",
      3               SUBSTR (t.column_value.getstringval (), 1, 50) "Column/Value"
      4  FROM   dba_tab_cols,
      5          TABLE
      6            (XMLSEQUENCE
      7           (DBMS_XMLGEN.GETXMLTYPE
      8              ( 'SELECT ' || column_name ||
      9               ' FROM ' || table_name ||
    10               ' WHERE REGEXP_INSTR
    11                     (UPPER (' || column_name || '),''' ||
    12                  UPPER (:search_string) || ''') > 0'
    13              ).extract ('ROWSET/ROW/*'))) t
    14  WHERE  table_name IN ('TABLE1', 'TABLE2')
    15  ORDER  BY "Table"
    16  /
    Searchword               Table  Column/Value
    \S\S\S-\S\S\S\S-\S\S\S\S TABLE1 <TAB1_COL1>matching abc-defg-hijk data</TAB1_COL1>
    \S\S\S-\S\S\S\S-\S\S\S\S TABLE1 <TAB1_COL1>xxx-xxxx-xxxx</TAB1_COL1>
    \S\S\S-\S\S\S\S-\S\S\S\S TABLE2 <TAB2_COL2>this BCD-EFGH-IJKL too</TAB2_COL2>
    3 rows selected.

  • SQL select a concatination of entries from another table

    I am trying to select a few columns from one table and then add another column that is a concatination or names from another table that referances it as below. Is this possible to do in one select statement?
    table x1
    ID NAME
    1 Bob
    1 Tom
    2 Bill
    table x2
    ID NAMES
    1 Bob, Tom
    2 Bill
    3

    You mean string aggregation?
    If yes, then it is possible like this, if you are on 10g.
    SQL> create table x1 (id,name)
      2  as
      3  select 1, 'Bob' from dual union all
      4  select 1, 'Tom' from dual union all
      5  select 2, 'Bill' from dual
      6  /
    Tabel is aangemaakt.
    SQL> select id
      2       , rtrim(n,', ') names
      3    from ( select id
      4                , n
      5                , rn
      6             from x1
      7            model
      8                  partition by (id)
      9                  dimension by (row_number() over (partition by id order by null) rn)
    10                  measures (cast(name as varchar2(20)) n)
    11                  rules
    12                  ( n[any] order by rn desc = n[cv()] || ', ' || n[cv()+1]
    13                  )
    14         )
    15   where rn = 1
    16  /
            ID NAMES
             1 Bob, Tom
             2 Bill
    2 rijen zijn geselecteerd.There are several other (slower) techniques possible as well. You can find them by using the search function on this forum.
    Regards,
    Rob.

  • SQL Select grouping by value

    Hi ,
    I have an output after a join statement and i have output
    which is like below.
    I have an output containing two colums with same data except for the emp_depts and would like to write a select statement which will give a single row as opposed to two rows as below.
    Current out put view.
    emp_no emp_Name emp_Depts
    1 Test HR
    1 Test Finance
    Desired output.
    1 Test HR,Finance
    Can some one please help.

    If you are on 10g:
    SQL> create table mytable
      2  as
      3  select 1 emp_no, 'Test' emp_Name, 'HR' emp_Depts from dual union all
      4  select 1, 'Test', 'Finance' from dual
      5  /
    Tabel is aangemaakt.
    SQL> with t as
      2  ( select emp_no,emp_name,substr(ed,2) emp_depts,rn
      3      from mytable
      4     model
      5           partition by (emp_no,emp_name)
      6           dimension by (row_number() over (partition by emp_no order by null) rn)
      7           measures (cast(emp_depts as varchar2(50)) ed)
      8           rules
      9           ( ed[any] order by rn desc = ed[cv()+1] || ',' || ed[cv()]
    10           )
    11  )
    12  select emp_no
    13       , emp_name
    14       , emp_depts
    15    from t
    16   where rn = 1
    17  /
        EMP_NO EMP_ EMP_DEPTS
             1 Test HR,Finance
    1 rij is geselecteerd.And this technique is not called pivoting, but string aggregation. If you search for this term you will see some other techniques as well.
    Regards,
    Rob.

Maybe you are looking for

  • Using existing java servlet as web portlet?

    I have an existing java servlet that I am trying to use as a web portlet. When I log into portal and run the page I have placed my web portlet on, the header shows up, but not the data. I don't fully understand the provider.xml file (especially the r

  • GL configuration (BI Apps vs. DBI)

    We have decided not to turn on the GL/Profitability Dashboards. Through research we noticed that the gl grouping configuration should still occur as the groups drive some AP and AR dashboards....However.....Does anyone know whether the GL account/hie

  • How to use a  MVC architecture

    i dont know how to use a MVC architecture,what are the files has to be needed to create a MVC architecture,right now iam using jsp file and a java file .in jsp file i just use the usebean tag

  • Applying custom icons to all files of a type

    I used to use ResEdit back int he day - and have used various tools on Mac and Windows to change icons. BUt I am stuggling with a default custom icon option for Mac OS X. I have a set of farily simply icons for use with a number of file types that I

  • I18n in tag attributes

    Hi again: I wonder how can we i18n a attribute like in <IMG src="image.gif"      id="foto" alt="I WANT TO I18N THIS!!!" > I'm using jakarta-taglibs 18n. Thanks a lot.