SQL - in using a string to filter by numbers
Hi,
Here is my problem, I have a simple query in which I want to include a condition IN using a bind variable. The bind variable is a string that stores numbers delimited by a comma.
The query looks like this :
select emp_id, ename
from emp
where emp_id in (:P_EMP_IDS);
:P_EMP_IDS is equal to '10,11,12'
But I want the query to do this :
select emp_id, ename
from emp
where emp_id in (10,11,12);
Is there a way to do this without converting my query into PL/SQL ?
Thanks
Hi,
In SQL*Plus, you can easily do that with a substitution variable rather than a bind variable:
select emp_id, ename
from emp
where emp_id in (&P_EMP_IDS);This asktom page deals with your question.
Similar Messages
-
QSUF (Query string url filter) and SQL Server reporting services report viewer parameters
Hi,
this is my issue:
I have a SQL Server reporting services web part on a page with a report with 1 parameter, lets say it's a client list
Then i have a QSUF that will be used to filter the clients list through the URL
However, once i connect the filter and the report viewer web part, the parameter goes away and is no longer accessible
I'd like to somehow keep the parameter visible, in case there is no parameter sent through the URL, i would like the user to be able to choose a client from the parameter drop down list
I saw that there is a "send empty if no values are passed" option, but i can't seem to get this working properly and i don't know if this option will make the parameter visible again
Any help would be appreciated
Thanks.Hi,
According to your post, my understanding is that the query string url filter web part not worked well with SQL server reproting services web part.
Did you use the Wiki page layout in your environment?
You can change the page to a web part page, then check whether it work.
There is a similar thread for your reference.
http://social.msdn.microsoft.com/Forums/sharepoint/en-US/4d7584e3-8e1a-48bf-9346-32f8cb480dd1/query-string-url-filter-web-part?forum=sharepointgeneralprevious
Thanks & Regards,
Jason
Jason Guo
TechNet Community Support -
Hi,
I want to pass multiple query string values using the same parameter in Query String (URL) Filter Web Part like mentioned below:
http://server/pages/Default.aspx?Title=Arup&Title=Ratan
But it always return those items whose "Title" value is "Arup". It is not returned any items whose "Title" is "Ratan".
I have followed the
http://office.microsoft.com/en-us/sharepointserver/HA102509991033.aspx#1
Please suggest me.
Thanks | Arup
THanks! Arup R(MCTS)
SucCeSS DoEs NOT MatTer.Hi DH, sorry for not being clear.
It works when I create the connection from that web part that you want to be connected with the Query String Filter Web part. So let's say you created a web part page. Then you could connect a parameterized Excel Workbook to an Excel Web Access Web Part
(or a Performance Point Dashboard etc.) and you insert it into your page and add
a Query String Filter Web Part . Then you can connect them by editing the Query String Filter Web Part but also by editing the Excel Web Access Web Part. And only when I created from the latter it worked
with multiple values for one parameter. If you have any more questions let me know. See you, Ingo -
Using a string variable as a query SQL statement
I want to construct a custom SQL statement in a string var, then use that var in the cfquery statement. What is the proper syntax? Here is my feeble attempt:
<cffunction ...>
<cfset var sql_txt="">
<cfquery name="qSBJs" datasource="cfBAA_odbc">
"#sql_txt#"
</cfquery>
<cfreturn qSBJs>
I've tried using no " or # or just # or just " but nothing works.
what about:
<cfquery name="qSBJs" datasource="cfBAA_odbc" sql="#sql_txt#">
</cfquery>
nope. I wish there was a sql property I could fill *before* the execution of the query. Any suggestions?Hi Adam, and/or anyone who may have a few minutes to check this... I got the following code to work. It calls the getSBJs function from Flash Builder 4. I get the correct result set back. Long table names are replaced with short abreviations. Note that some local vars are declared but not used in the following example. I will use them in the future versions of this same code. Since I will in the future, like a donkey, mindlessly use this same method for all my queries, it would be much appreciated if I could get a guru to check this code for:
-Pure idiocy
-Mild insanity
-SQL injection vulnerability
-Memory leakage
-Scope dangers
(ignore emoticons, see the underlying text)
<cffunction name="AbrvTblNms" output="false" returntype="string" >
<cfargument name="txt" type="string" required="true" />
<cfset var qAbrvs="">
<cfset var output_str="#ARGUMENTS.txt#">
<cfquery name="qAbrvs" datasource="cfBAA_odbc" result="rsltAbrvs">
SELECT TBL_NM, ABRV FROM BAA_TBL_ABRV ORDER BY 1
</cfquery>
<cfloop query="qAbrvs">
<cfset output_str = Replace(output_str, '[' & qAbrvs.TBL_NM & ']', qAbrvs.ABRV, "ALL")>
</cfloop>
<cfreturn output_str>
</cffunction>
<!--- Fetch a list photo subjects whose records contain the given search word(s) --->
<cffunction name="getSBJs" output="false" access="remote" returntype="any" >
<cfargument name="srch_val" type="string" required="true" />
<cfset var qSBJs="">
<cfset var sql_txt="">
<cfset var whr="">
<cfset var b=False>
<cfset var in_txt="">
<cfset var fm_dt="">
<cfset var to_dt="">
<cfset var on_dt="">
<cfset var pht="">
<cfset var srch_str="">
<cfset var srch_trm="">
<!--- Transfer the srch_val to a local variable for further manipulation --->
<cfset srch_str = "#ARGUMENTS.srch_val#">
<!---
An empty search term argument is handled by the BAA FlashBuilder front end. We test for it again here,
and substitute a dummy value, in case this function is called by something other than the intended
FlashBuilder front end, and that front end doesn't protect us from an empty search term argument.
Remember that we must still "hand back" a valid query structure to avoid causing a data type error
in the calling function, so we search for a dummy value that will allow the query to proceed but is
guaranteed to return an empty result set. If the srch_val argument is not empty, transfer the value of
the srch_str local variable to the srch_trm local variable.
--->
<cfif Not (Len(srch_str))>
<cfset srch_str = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX">
</cfif>
<cfset srch_trm = "#srch_str#">
<cfset sql_txt =
"SELECT DISTINCT
[BAA_SBJ].SRC_SYS_NM, [BAA_SBJ].SRC_SYS_GUID, [BAA_SBJ].OBJ_GUID, [BAA_SBJ].SBJ_NM, [BAA_SBJ].SBJ_DOB, [BAA_SBJ].SBJ_ID, [BAA_SBJ].NOTE, [BAA_SBJ].CDT, [BAA_SBJ].CTM, [BAA_SBJ].CBY, [BAA_SBJ].MDT, [BAA_SBJ].MTM, [BAA_SBJ].MBY
FROM
BAA_SBJ [BAA_SBJ]
LEFT JOIN BAA_SES [BAA_SES] ON [BAA_SES].PAR_GUID = [BAA_SBJ].OBJ_GUID
LEFT JOIN BAA_IMG [BAA_IMG] ON [BAA_IMG].PAR_GUID = [BAA_SES].OBJ_GUID
WHERE [WHERE_CLAUSE] ORDER BY [BAA_SBJ].SBJ_NM">
<cfset whr = "([BAA_SBJ].SBJ_NM CONTAINING TRIM( rm_srch_trm1 ) OR " &
"[BAA_SBJ].NOTE CONTAINING TRIM(:prm_srch_trm2 ) OR " &
"[BAA_SBJ].SBJ_DOB CONTAINING TRIM(:prm_srch_trm3 ) OR " &
"[BAA_SES].SES_TYP CONTAINING TRIM(:prm_srch_trm4 ) OR " &
"[BAA_SES].NOTE CONTAINING TRIM(:prm_srch_trm5 ) OR " &
"[BAA_IMG].NOTE CONTAINING TRIM(:prm_srch_trm6 ))">
<cfset sql_txt = Replace(sql_txt,"[WHERE_CLAUSE]", "#whr#", "ALL")>
<cfset sql_txt = AbrvTblNms(sql_txt)>
<!--- Through experimentation, I learned that each occurance of a param must be uniquely named.
It would be very handy, if the param value was applied to *all* occurances of the param.
That way, I could get away with using one .addParam line instead of 6 --->
<cfscript>
queryService = new query();
queryService.setDatasource("cfBAA_odbc");
queryService.setName("qSBJs");
queryService.setAttributes(sql="#sql_txt#");
queryService.addParam(name="prm_srch_trm1", value="#srch_trm#", cfsqltype="VARCHAR");
queryService.addParam(name="prm_srch_trm2", value="#srch_trm#", cfsqltype="VARCHAR");
queryService.addParam(name="prm_srch_trm3", value="#srch_trm#", cfsqltype="VARCHAR");
queryService.addParam(name="prm_srch_trm4", value="#srch_trm#", cfsqltype="VARCHAR");
queryService.addParam(name="prm_srch_trm5", value="#srch_trm#", cfsqltype="VARCHAR");
queryService.addParam(name="prm_srch_trm6", value="#srch_trm#", cfsqltype="VARCHAR");
result = queryService.execute();
qSBJs = result.getResult();
</cfscript>
<!--- <cfquery name="qSBJs" datasource="cfBAA_odbc">
</cffunction>
</cfquery> --->
<cfreturn qSBJs>
</cffunction>
THANKS TO ADAM AND DAN FOR HELPIMG ME GET THIS FAR! Now, don't let me embarass you by doing something dum and giving you "credit", if you see me doing something dum above. Thanks! -
How to reference the Instance name using Substitution string or SQL
All:
We have an Application that will be replicated in multiple Apex instances and would like to display the current Oracle Apex Instance name ( Similar to the &APP_USER. on the Welcome portion of the page ) .
Is there a substitution string for this ?
We plan on using a Show/Hide region on the splash page titled [About], that when clicked displays an HTML region with the subsitution strings.
If no substitution strings, can someone help with an SQL that returns the Instance name ?
Thanks for all the help.
Aubrey FernandesAubrey Fernandes wrote:
I currently have 3 URLs to get to my Development, QA and Production servers & will have many more production servers with different Application Ids.
Development = http://canqa101:7777/pls/ngcrmd01/apex
QA = http://canqa101:7777/pls/ngcrmq01/f?p=100:1
Production = http://cancs105:7777/pls/ngcrmp01/f?p=100:1
What I need are the portions before the final forward slash ( canqa101:7777/pls/ngcrmd01 ) which I assumed is the Oracle Apex instance.That information is determined by the web server configuration (e.g. the DADs when using OHS) rather than through APEX itself. There are no built-in substitution strings for this. Create an application item and an On New Instance (new session) computation to set the value using the function<tt>owa_util.get_cgi_env</tt> function to get the CGI environment variables <tt> HTTP_HOST</tt> and <tt>SCRIPT_NAME</tt>. You can then reference the value in the region using substitution string syntax. -
How can I get a list of values (one or more) used in the WHERE filter of stored procedures and functions in SQL Server?
How can get a list of values as shown (highlighted) in the sample stored procedure below?
ALTER PROC [dbo].[sp_LoanInfo_Data_Extract] AS
SELECT [LOAN_ACCT].PROD_DT,
[LOAN_ACCT].ACCT_NBR,
[LOAN_NOTE2].OFCR_CD,
[LOAN_NOTE1].CURR_PRIN_BAL_AMT,
[LOAN_NOTE2].BR_NBR,
INTO #Table1
FROM
dbo.[LOAN_NOTE1],
dbo.[LOAN_NOTE2],
dbo.[LOAN_ACCT]
WHERE
[LOAN_ACCT].PROD_DT = [LOAN_NOTE1].PROD_DT
and
[LOAN_ACCT].ACCT_NBR = [LOAN_NOTE1].ACCT_NBR
and
[LOAN_NOTE1].PROD_DT = [LOAN_NOTE2].PROD_DT
and
[LOAN_NOTE1].MSTR_ACCT_NBR = [LOAN_NOTE2].MSTR_ACCT_NBR
and
[LOAN_ACCT].PROD_DT = '2015-03-10'
and
[LOAN_ACCT].ACCT_STAT_CD IN
('A','D')
and
[LOAN_NOTE2].LOAN_STAT_CD IN
('J','Z')
LenfinkelHi LenFinkel,
May I know what is purpose of this requirement, as olaf said,you may parse the T-SQL code (or the execution plan), which is not that easy.
I have noticed that the condition values in your Stored Procedure(SP) are hard coded and among them there is a date values, I believe some day you may have to alter the SP when the date expires. So why not declare 3 parameters of the SP instead hard coding?
For multiple values paramter you can use a
table-valued parameter. Then there's no problem getting the values.
If you could elaborate your purpose, we may help to find better workaround.
Eric Zhang
TechNet Community Support -
Sql Server Express Query String error
I am having trouble trying to filter my sql database using the query string against a date column in my database. I set a date variable = "dd/mm/yyy" format but when I apply that in the sql query as:
StartPeriod = CDate("01/" & Today.Month.ToString & "/" & Today.Year.ToString)
EndPeriod = CDate(Today.Day.ToString & "/" & Today.Month.ToString & "/" & Today.Year.ToString)
At this point StartPeriod = #04/01/2015# and EndPeriod is #04/27/2015#
sql = "SELECT * FROM Transactions WHERE ((PaidOutDate IS Null) OR (TransDate >= '" & StartPeriod & "' AND TransDate <= '" & EndPeriod & "')
When I execute the Sql command I get this error:
"Conversion failed when converting date and/or time from character string"
My Current Culture is {en-AU}
Any help is appreciated.
Brad
BHendVisakh,
Further to the problem above. Your suggestion worked well on my laptop, but when I transferred the program to my desktop it failed with the error: "Conversion failed when converting date and/or time from character string" again. Both
computers are running the same version of Windows 8.1, both running the same version of vs express 2012 and both running the same version of ssms. Both Windows 8.1 versions have the same English (Australia) as the Region and language. The only
difference that I can find is that while both have a CurrentCulture of {en=AU} and CurrentUICulture of {en-GB} the laptop, where the program works has an InstalledUICulture of {en-GB} and the PC where it doesn't work has an InstalledUICulture of {en-US}.
Do you think this could be the problem? If so, how would I change the InstalledIUCulture?
As you can tell I am way our of my depth here, I've looked in the Control Panel and both computers appear to have the same settings for options that I think are relevant, but of course there could be hundreds of other settings nI don't know about.
I've also progressively worked through the Registry on both computers comparing their settings but could find nothing relevant.
Any suggestions of where to look?
Thanks Again
Brad
BHend -
Error in using a variable in filter condition in an Interface
Hi All,
I am using a variable in my interface in a filter condition. I have an EMP table of scott schema and want to pull all the records wiht hiredate date lying between 2 dates, incremental pull.For this I have created 2 variables and using them in the filter condition. I am getting an error inthe interface when I run in a package after declaring and refresing the variables.
com.sunopsis.sql.SnpsMissingParametersException: Missing parameter
at com.sunopsis.sql.SnpsQuery.completeHostVariable(SnpsQuery.java)
at com.sunopsis.sql.SnpsQuery.updateExecStatement(SnpsQuery.java)
at com.sunopsis.sql.SnpsQuery.executeUpdate(SnpsQuery.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execStdOrders(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSqlI.treatTaskTrt(SnpSessTaskSqlI.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.g.y(g.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Unknown Source)
Regards,
KrishnaHi Krishna,
What is the datatype of the Variable lastupdate ?
In my case
Variable
Name : LastUpdateDate
Datatype : Alphanumeric
Action : Historize
Query : select to_char(to_date(sysdate,'DD-MON-YY'),'DD-MON-YY') from sys.dual
Then in filter I used
EMP.HIREDATE>to_date('#LastUpdateDate','DD-MON-YY')
Thanks
Sutirtha -
SQL report region source to call a pl/sql function using DB link
Hi - I have a pl/sql function fn_dbtype(id NUMBER) defined in database X. The pl/sql function executes couple DML statements and returns a string (a SELECT query). I am able to call this function using SQL Plus (Connected to Database X) as below and it works fine:
declare
vSQL VARCHAR2(100);
begin
vSQL := fn_dbtype(1);
end;
The DML operations completed fine and vSQL contains the "Select" query now.
In APEX:
I am trying to create a SQL report in APEX using SQL query(PL/SQL function returning a sql statement) option. I am trying to figure out what to put in the region source so that the output of the "Select" query is displayed in the report.
Moreover APEX is hosted in a different database instance. So I would need to call this pl/sql function using a DB Link.
Please let me know what I need to put in the region source to execute the pl/sql function which returns the "Select" query thereby displaying the query output in the report. Thanks.
Edited by: user709584 on Mar 19, 2009 2:32 PM
Edited by: user709584 on Mar 19, 2009 2:34 PMtry something like this:
return fn_dbtype(1)@dblink; -
Powershell use Connection String to query Database and write to Excel
Right now I have a powershell script that uses ODBC to query SQL Server 2008 / 2012 database and write to EXCEL
$excel = New-Object -Com Excel.Application
$excel.Visible = $True
$wb = $Excel.Workbooks.Add()
$ws = $wb.Worksheets.Item(1)
$ws.name = "GUP Download Activity"
$qt = $ws.QueryTables.Add("ODBC;DSN=$DSN;UID=$username;PWD=$password", $ws.Range("A1"), $SQL_Statement)
if ($qt.Refresh()){
$ws.Activate()
$ws.Select()
$excel.Rows.Item(1).HorizontalAlignment = $xlCenter
$excel.Rows.Item(1).VerticalAlignment = $xlTop
$excel.Rows.Item("1:1").Font.Name = "Calibri"
$excel.Rows.Item("1:1").Font.Size = 11
$excel.Rows.Item("1:1").Font.Bold = $true
$filename = "D:\Script\Reports\Status_$a.xlsx"
if (test-path $filename ) { rm $filename }
$wb.SaveAs($filename, $xlOpenXMLWorkbook) #save as an XML Workbook (xslx)
$wb.Saved = $True #flag it as being saved
$wb.Close() #close the document
$Excel.Quit() #and the instance of Excel
$wb = $Null #set all variables that point to Excel objects to null
$ws = $Null #makes sure Excel deflates
$Excel=$Null #let the air out
I would like to use connection string to query the database and write results to EXCEL, i.e.
$SQL_Statement = "SELECT ..."
$conn = New-Object System.Data.SqlClient.SqlConnection
$conn.ConnectionString = "Server=10.10.10.10;Initial Catalog=mydatabase;User Id=$username;Password=$password;"
$conn.Open()
$cmd = New-Object System.Data.SqlClient.SqlCommand($SQL_Statement,$conn)
do{
try{
$rdr = $cmd.ExecuteReader()
while ($rdr.read()){
$sql_output += ,@($rdr.GetValue(0), $rdr.GetValue(1))
$transactionComplete = $true
catch{
$transactionComplete = $false
}until ($transactionComplete)
$conn.Close()
How would I read the columns and data for $sql_output into an EXCEL worksheet. Where do I find these tutorials?Hi Q.P.Waverly,
If you mean to export the data in $sql_output to excel document, please try to format the output with psobject:
$sql_output=@()
do{
try{
$rdr = $cmd.ExecuteReader()
while ($rdr.read()){
$sql_output+=New-Object PSObject -Property @{data1 = $rdr.GetValue(0);data2 =$rdr.GetValue(1)}
$transactionComplete = $true
catch{
$transactionComplete = $false
}until ($transactionComplete)
$conn.Close()
Then please try to use the cmdlet "Export-Csv" to export the data to excel like:
$sql_output | Export-Csv d:\data.csv
Or you can export to worksheet like:
$excel = New-Object -ComObject Excel.Application
$excel.Visible = $true
$workbook = $excel.Workbooks.Add()
$sheet = $workbook.ActiveSheet
$counter = 0
$sql_output | ForEach-Object {
$counter++
$sheet.cells.Item($counter,1) = $_.data1$sheet.cells.Item($counter,2) = $_.data2}
Refer to:
PowerShell and Excel: Fast, Safe, and Reliable
If there is anything else regarding this issue, please feel free to post back.
Best Regards,
Anna Wang -
SQL Error: ORA-01704: string literal too long
select * from table(fn_split('some 10000 characters with comma separation .........................'))
Error report:
SQL Error: ORA-01704: string literal too long
01704. 00000 - "string literal too long"
*Cause: The string literal is longer than 4000 characters.
*Action: Use a string literal of at most 4000 characters.
how to pass my 10k record string933663 wrote:
The string is through a user interface.So, that interface is using what datatype for the string? What language is the interface written in?
insert into table
select * from table(fn_split('2,4,2,5,7'));Do you understand what a string literal is? You cannot provide a varchar2 string that exceeds 4000 bytes from within SQL. Fact. It just cannot be done.
If you are passing the string from a user interface using a datatype that supports more than 4000 bytes, and you pass it directly to PL/SQL code by calling the function or procedure directly (not using SQL) then you can use up to 32767 bytes for your VARCHAR2.
The code you've posted (which happens to be some of my own code posted years ago on these forums) takes a VARCHAR2 as an input. You would have to change that to accept a CLOB datatype and work on the CLOB instead. However, you still wouldn't be able to pass in a string literal of more than 4000 bytes from SQL for it.
Looking at your other thread: Seperate the string value
... it looks like the 'user' is trying to pass in a table definition. What is it your application is trying to do? Surely you are not trying to create a table at run time?
So explain, what is the business issue you are trying to solve? We may be able to provide a better way of doing it. -
Can't connect to SQL Database using new login
I can connect to Azure SQL Database using the admin ID created when I set up the Azure account. Now I want to set up a different login that has only regular read/write privileges. I have followed the instructions on several web posts, to create
a login at the server level, then create a user at the database level from the login. When I try to connect, though, the connection fails. I get an error message, and a GUID that I am supposed to supply to MS tech support, except that all I have
is a standard Azure subscription, which does not include tech support.
Here is what I have done so far:
Logging in to the server with the admin account with SQL Mgmt Studio, I go to the master database on my Azure server, and create the login:
CREATE LOGIN clouduser@gxw8x04nlb with PASSWORD = 'xoxoxoxo';
This appears to work (password supplied is a "strong" password), or at least it doesn't show any error response.
Then, connecting to the production database in Azure, I set up a user and set permissions as follow:
CREATE USER clouduser1 FROM LOGIN clouduser@gxw8x04nlb;
EXEC sp_addrolemember 'db_datareader', 'clouduser1'
EXEC sp_addrolemember 'db_datawriter', 'clouduser1'
When I attempt to connect to Azure using the new login, however, I get an error message (from SQL Mgmt Studio as well as from MS Access). I am using the SQL Server Native Client 10.0.
The message is:
Connection failed:
SQLState '28000'
SQL Server Error 18456
[Microsoft][SQL Server Native Client 10.0][SQL Server]Login failed for user 'clouduser'.
Connection failed:
SQLState: '01000'
SQL Server Error: 40608
[Microsoft][SQL Server Native Client 10.0][SQL Server]This session has been assigned a tracing ID of
'271851d5-8e94-497c-a332-d9d40682bb7a'. Provide this tracing ID to customer support when you need assistance.
Is there some missing step I need to do, to permit the login to see the database? I have looked for such in the various discussions about connection problems, but have not been able to find such a thing. Or extend more permissions to the new
user? Or specify a default user ID for a given login ? (as they do not have the same names, in the examples I have seen). I tried making the user ID the same as the login (w/o the server name), but that didn't seem to help, either.
I have done numerous web searches, and tried about every variation of login or user ID, password, etc. that I can think of, and all of them encounter the same error. It's got to be something very simple - clearly Azure supports more than one login
per database. But's that's all I have at the moment. That login connects just fine, but others won't, using the same PC, middleware, IP address, etc.
Any help would be much appreciated -
Thanks,
DougOlaf -
I noticed that, but all of the examples I have seen have Users named slightly differently from the Logins. I did try logging in with the Login name instead. No good. I tried making the Login and the User name the same (clouduser). Also
no good - same symptoms.
I think the problem is that the initial creation of the Login needs to be done WITHOUT the server name on the end.
Logged in to the master DB, I tried: Create LOGIN clouduser@gxw8x04nlb with PASSWORD = 'xoxoxoxo';
That didn't give me an error message, but I think it created a LOGIN of 'clouduser@gxw8x04nlb'. When
referenced from the outside world, I would need to specify 'clouduser@gxw8x04nlb@gxw8x04nlb'.
I tried deleting the logins, and then creating the login 'clouduser' in the Master DB. Then in
the application DB, I created User clouduser from LOGIN clouduser, and then assigned a role. That seems to work!
In my connection string, File DSN, etc. I still need to supply the login as 'clouduser@gxw8x04nlb'.
But when I am logged in to the server, and working in the Master DB or the application DB, I just refer to the Login as 'clouduser'.
Seems a little more complicated than it really should be, but at least I now have something that works.
Doug
Doug Hudson -
How to use, Case function and Filter in Column Formula?
Hello All,
I am using case function and also would like to filter value to populate.
Below is showing error :
case
when '@{Time}' = 'Year' then "Time"."Fiscal Year"
when '@{Time}' = 'Quarter' then "Time"."Fiscal Quarter"
when '@{Time}' = 'Month' then FILTER ("Time"."Fiscal Period" USING "Time"."Fiscal Period" NOT LIKE 'A%')
else ifnull('@{Time}','Selection Failed') end
Thanks, AKwhen '@{Time}' = 'Month' then FILTER ("Time"."Fiscal Period" USING "Time"."Fiscal Period" NOT LIKE 'A%')I dont think Filter this works here or any other data types except number.
Try to use option Column's->Filter->Advanced->Convert this filter to SQL
If helps mark -
Hi Everyone,
I am Using This Code to read the Mail from server and inserting those into database but i am getting error like
import java.io.*;
import java.util.*;
import javax.mail.*;
import java.sql.*;
public class ReadMail_OLD {
static StringBuffer s= new StringBuffer();
static StringBuffer s1= new StringBuffer();
public static void main(String args[]) throws Exception {
String host = "***.****.co.in";
String user = "***@***.**.**";
String password = "******";
String Message_2000 = new String();
String Message_2001 = new String();
Connection conn;
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@1.2.3.5:1050:abcgdb", "abc", "efg");
Statement stm = conn.createStatement();
String strsql = "insert into READ_MAIL_MSG (MESSAGE_ID,SENT_DATE,MAIL_FROM,MAIL_TO,MAIL_SUBJECT,MESSAGE) values (" ;
// Get system properties
Properties properties = System.getProperties();
// Get the default Session object.
Session session = Session.getDefaultInstance(properties);
// Get a Store object that implements the specified protocol.
Store store = session.getStore("pop3");
//Connect to the current host using the specified username and password.
store.connect(host, user, password);
//Create a Folder object corresponding to the given name.
Folder folder = store.getFolder("inbox");
// Open the Folder.
folder.open(Folder.READ_ONLY);
Message[] message = folder.getMessages();
// Display message.
for (int i = 0; i < message.length; i++)
//System.out.println("------------ Message " + (i + 1) + " ------------");
//System.out.println("SentDate : " + message.getSentDate());
//System.out.println("From : " + message[i].getFrom()[0]);
//System.out.println("Subject : " + message[i].getSubject());
//System.out.print("Message : ");
InputStream stream = message[i].getInputStream();
int j = 0;
Message_2000 = "";
Message_2001 = "";
while(stream.available()>0 && j < 500)
// read the byte and convert the integer to character
s.append((char) stream.read());
j = j+1;
Message_2000 = s.toString();
Message_2001 = Message_2000.replace("'"," ");
System.out.println(strsql+"'"+(i + 1)+"','"+message[i].getSentDate()+"','"+message[i].getFrom()[0]+"','***@***.co.in','"+message[i].getSubject()+"','"+s.toString()+"')");
stm.execute(strsql+"'"+(i + 1)+"','"+message[i].getSentDate()+"','"+message[i].getFrom()[0]+"','***@****.co.in','"+message[i].getSubject()+"','"+Message_2001+"')");
folder.close(true);
store.close();
when i execute this some messages get inserted into table but for some messages
Exception in thread "main" java.sql.SQLException: ORA-01704: string literal too long
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:582)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1983)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1141)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2149)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2032)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2894)
at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:942)
at ReadMail_OLD.main(ReadMail_OLD.java:64)
Edited by: 997089 on May 1, 2013 9:29 PM
Edited by: 997089 on May 1, 2013 9:30 PMHi All,
Thanks for Your Reply .
I got the answer i have made a mistake in loop after every iteration i have not cleared the stringBuffer Varaible so the after one or two iteration it givesthe error.
import java.io.*;
import java.util.*;
import javax.mail.*;
import java.sql.*;
public class ReadMail_OLD {
static StringBuffer s= new StringBuffer();
static StringBuffer s1= new StringBuffer();
public static void main(String args[]) throws Exception {
String host = "***.****.co.in";
String user = "***@***.**.**";
String password = "******";
String Message_2000 = new String();
String Message_2001 = new String();
Connection conn;
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@1.2.3.5:1050:abcgdb", "abc", "efg");
Statement stm = conn.createStatement();
String strsql = "insert into READ_MAIL_MSG (MESSAGE_ID,SENT_DATE,MAIL_FROM,MAIL_TO,MAIL_SUBJECT,MESSAGE) values (" ;
// Get system properties
Properties properties = System.getProperties();
// Get the default Session object.
Session session = Session.getDefaultInstance(properties);
// Get a Store object that implements the specified protocol.
Store store = session.getStore("pop3");
//Connect to the current host using the specified username and password.
store.connect(host, user, password);
//Create a Folder object corresponding to the given name.
Folder folder = store.getFolder("inbox");
// Open the Folder.
folder.open(Folder.READ_ONLY);
Message[] message = folder.getMessages();
// Display message.
for (int i = 0; i < message.length; i++)
//System.out.println("------------ Message " + (i + 1) + " ------------");
//System.out.println("SentDate : " + message.getSentDate());
//System.out.println("From : " + message.getFrom()[0]);
//System.out.println("Subject : " + message.getSubject());
//System.out.print("Message : ");
InputStream stream = message.getInputStream();
int j = 0;
Message_2000 = "";
Message_2001 = "";
while(stream.available()>0 && j < 500)
// read the byte and convert the integer to character
s.append((char) stream.read());
j = j+1;
Message_2000 = s.toString();
Message_2001 = Message_2000.replace("'"," ");
System.out.println(strsql+"'"+(i + 1)+"','"message.getSentDate()"','"message.getFrom()[0]"','***@****.co.in','"message.getSubject()"','"s.toString()"')");
stm.execute(strsql+"'"+(i + 1)+"','"message.getSentDate()"','"message.getFrom()[0]"','***@****.co.in','"message.getSubject()"','"Message_2001"')");
s.delete(0, s.length());
folder.close(true);
store.close();
Thanks for Reply
Edited by: 997089 on May 1, 2013 9:28 PM
Edited by: 997089 on May 1, 2013 9:30 PM -
SPSiteDataQuery - filter by file Title - Can I use variable for the filter value?
I use SPsiteDataQuery to search across multiple lists and filter by file title. I have the file title information in a variable.
Can I use variable in the filter value?
string fileName = "Policies.doc"
SPSiteDataQuery spQry = new SPSiteDataQuery();
spQry.ViewFields = "<FieldRef Name='Title'/><Value Type='Text'>fileName</Value>"If I have understood correctly, you want to search based upon a File title in all the sites. You can include a query to filename in the spQry
spQry.Query = "<Where>" +
"<Eq>" +
"<FieldRef Name=\"FileLeafRef\"/>" +
"<Value Type=\"Text\">" + fileName + "</Value>" +
"</Eq>" +
"</Where>";
get2pallav
Please click "Propose As Answer" if this post solves your problem or "Vote As Helpful" if this post has been useful to you.
Maybe you are looking for
-
Hello After the latest update a new print dialog is available which includes the option to 'Print on both sides of the paper'. Our printer (available via a print server in a Windows domain environment), is capable of printing duplexed copies of docum
-
How am I able to do this the most easy and seamless way?
-
Help, I tried to do the new 8.1 update and it says I'm now in recovery mode.
Ever since I did the latest update the 8.02 or whatever every app keeps freezing so I decided to do the 8.1 today. I tried that and it put my phone into recovery mode. I said to plug into Itunes, I did and it's saying that I should do a factory resto
-
PSE 11- font size in Organizer
Has Adobe given you the option to enlarge the font for Tags, dates, etc. in PSE 11? Or is it still in extremely small print. I went from PSE 6 to PSE 10 and it was a shock. I can barely make out the tags and photo info on the screen without being
-
Problem in loading DLL in Windows Environment
Hello to all I'm New to This forum .... NOw days i'm working on a java project and i hav to load lot of DLLs files through java Programe, but wen i Load the library through System.LoadLibrary("Dll Name") in windows Environment Then The folowing msg I