Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Java Programming >> Content

    Hur man använder CLOB i Java

    Du kan nu slutföra många uppgifter genom Java Database Connectivity ( JDBC ) Application Programming Interface ( API ) med kolonner databas CLOB . CLOB , som står för " Character stort objekt , " är en data verktyg som används för lagring och hämtning av stora mängder textdata i teckenformat. En CLOB kan lagra upp till 128 terabyte karaktär data i databasen . Dess full kompatibilitet med Java gör det en föredras av många utvecklare . Instruktioner
    1

    Använd följande kod fragment för att skapa en CLOB objekt , där " rs " är ett ResultSet objekt :

    CLOB clob = rs.getClob ( 1 ) ;

    variabeln " CLOB " är nu en funktionell aktör på CLOB värde lagrat i den första kolumnen i resultatet som " rs . "
    2

    Mata in följande kod till din databas för att köra två identiska CLOB värden i en ny tabell , som kan innehålla 500 kilobyte av redundanta textdata :

    import java.sql *;

    public class PutGetClobs {

    allmänheten. static void main ( String [] args ) katalog

    kastar SQLException

    {

    //Registrera infödda JDBC drivrutinen .

    try {

    Class.forName ( " com.ibm.db2.jdbc.app.DB2Driver " ) ;

    } catch ( Exception e ) {

    System.exit ( 1 ) , //Setup . fel

    }

    //upprätta en anslutning och uttalande med att arbeta

    Anslutning c = DriverManager.getConnection ( " jdbc : DB2 : * lokal " ) . ;

    Uttalande s = c.createStatement ( ) ;

    //städa upp någon föregående körningen av denna ansökan

    try {

    s.executeUpdate ( . " DROP tABLE CUJOSQL.CLOBTABLE " ) ;

    } catch ( SQLException e ) {

    //Ignorera det - anta tabellen inte existerade

    }
    .

    //Skapa en tabell med en CLOB kolumn . Standardinställningen CLOB kolumn

    //storlek är 1 MB

    s.executeUpdate ( " CREATE TABLE CUJOSQL.CLOBTABLE ( COL1 CLOB ) " ) ; .

    //Skapa ett PreparedStatement objekt som tillåter dig att sätta

    //en ny CLOB objekt i databasen

    PreparedStatement ps = c.prepareStatement ( " INSERT INTO CUJOSQL.CLOBTABLE VÄRDEN ( ) ? " ) ; .

    //Skapa en stor CLOB värde ...

    StringBuffer buffer = new StringBuffer ( 500000 ) ,

    samtidigt ( buffer.length ( ) < 500000 ) {

    buffer.append ( " Allt arbete och ingen lek gör Cujo en tråkig pojke . " ) ;

    }

    String clobValue = buffer.toString ( ) ;

    //Ställ PreparedStatement parametern . Detta är inte

    //bärbart till alla JDBC . JDBC har inte

    //för att stödja setBytes för CLOB kolumner . Detta görs för att

    //låter dig skapa nya CLOBs . Det också

    //tillåter JDBC 1.0 chaufförer ett sätt att arbeta med kolumner innehållande

    //CLOB uppgifter

    ps.setString ( 1 , clobValue ) ; .

    //Process uttalandet , sätta in CLOB i databasen

    ps.executeUpdate ( ) , .

    //Process en fråga och få CLOB som var just in ur

    //databas som en CLOB objekt

    ResultSet rs = s.executeQuery ( " SELECT * FROM CUJOSQL.CLOBTABLE " ) , .

    rs.next ( ) ;

    clob clob = rs.getClob ( 1 ) ;

    //Put att CLOB tillbaka in i databasen via

    //PreparedStatement

    ps . . setClob ( 1 , CLOB ) ;

    ps.execute ( ) ;

    c.close ( ) , //Anslutning close stänger även stmt och rs

    }

    } Addera 3

    Infoga följande kod till din databas för att ändra beteendet hos dina CLOB objekt : .

    import java.sql * ;

    public class UpdateClobs {

    public void main ( String [] args ) katalog

    kastar SQLException

    {

    //Registrera infödda JDBC föraren

    try {

    Class.forName ( " com.ibm.db2.jdbc.app.DB2Driver " ) ;

    } . catch ( Exception e ) {

    System.exit ( 1 ) , //Setup Error

    }

    Anslutning c = DriverManager.getConnection ( " jdbc : DB2 : * lokal " ) , .
    < p> Uttalande s = c.createStatement ();

    ResultSet rs = s.executeQuery ( " SELECT * FROM CUJOSQL.CLOBTABLE ");

    rs.next ();
    < p> CLOB clob1 = rs.getClob ( 1 ) ;

    rs.next ();

    CLOB clob2 = rs.getClob ( 1 ) ;

    //Trunkera a . CLOB

    clob1.truncate ( ( lång) 150000 ) ,

    System.out.println ( " Clob1 nya längd är " + clob1.length ( ) ) ;

    //uppdatera en del av CLOB med ett nytt String värde

    String value = " Några nya uppgifter för en gång " , .

    int charsWritten = clob2.setString ( 500L , värde ) ;

    System.out.println ( " skrivtecknen är " + charsWritten ) ;

    //The bytes kan hittas vid position 500 i clob2

    lång startInClob2 = clob2.position ( värde 1 ) ,

    System.out.println ( " mönster återfinns med början vid position " + startInClob2 ) ;

    c.close ( ) , //Anslutning close stänger även stmt och rs .

    }

    }
    4

    Tillämpa följande kod att exekvera CLOB i din databas . CLOB kommer att stängas av sig själv efter att ha utfört sina uppgifter som anges nedan

    import java.sql *; . .

    Public class UseClobs {

    public void main ( String [] args ) katalog

    kastar SQLException

    {

    //Registrera infödda JDBC drivrutinen .

    try {

    Class.forName ( " com . ibm.db2.jdbc.app.DB2Driver " ) ;

    } catch ( Exception e ) {

    System.exit ( 1 ) , . //Setup Error

    }

    Anslutning c = DriverManager.getConnection ( " jdbc : db2 : * lokal ");

    Uttalande s = c.createStatement ();

    ResultSet rs = s . executeQuery ( " SELECT * FROM CUJOSQL.CLOBTABLE ");

    rs.next ();

    CLOB clob1 = rs.getClob ( 1 ) ;

    rs.next ( ) ;

    CLOB clob2 = rs.getClob ( 1 ) ;

    //Bestäm längden på en LOB

    långa änden = clob1.length ( ),.

    System.out.println ( " Clob1 längd är " + clob1.length ( ) ) ;

    //När du arbetar med LOB , all indexering som är relaterat till dem

    //är 1 - baserad , och inte 0 - baserat som strängar och arrayer

    lång startingpoint = 450 ; .

    lång endingPoint = 50 ;

    //Hämta del av CLOB som en byte array

    String outString = clob1.getSubString ( startingpoint , ( int ) endingPoint ) .

    System.out.println ( " CLOB delsträng är " + outString ) ;

    //Hitta var en sub - CLOB eller sträng först finns inom en

    //CLOB . Installationsprogrammet för det här programmet placeras två identiska kopior av

    //en upprepande CLOB i databasen . Sålunda kan startpositionen för den

    //string extraheras från clob1 hittas i utgångsmaterialet

    //position i clob2 om sökningen börjar nära den position där

    //strängen börjar

    lång startInClob2 = clob2.position ( outString , 440 ) ; .

    System.out.println ( " mönster återfinns med början vid position " + startInClob2 ) ;

    c.close ( ) , //Anslutning close stänger även stmt och rs

    }

    }

    .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur att rensa en JMS kö
    ·Lägga Nollor framme av ett nummer i Java
    ·Java pop- up Codes
    ·Hur Hoppa Position i GridLayout i Java
    ·Hur kan jag installera Java på min HP -dator
    ·Hur Spola ett buffrat Reader i Java
    ·Hur man läser HTML-filer Använda Java
    ·En Java Åsidosätt Overload
    ·Hur du ansluter en Direct Java Application Interface
    ·Så skicka ett mail med bifogade filer i Java
    Utvalda artiklarna
    ·Hur du ändrar en bakgrundsbild på Rollover
    ·Spelidéer för Python
    ·Hur Master C Pekare
    ·Hur konvertera JSP till HTML i Dreamweaver
    ·Hur du tar bort cookies och temporära filer med Visual…
    ·Hur man läser ett Word-dokument med C
    ·Hur koden Dubbla Alternativ Använda JavaServer Pages
    ·Hur Time VBA-funktioner
    ·Hur hittar Skript
    ·Hur man avskedar en ItemDrag händelse
    Copyright © Dator Kunskap http://www.dator.xyz